Dockerコンテナにファイルを転送する方法

バックアップなどの目的で、Dockerコンテナからホスト システムにファイルを転送する必要がある場合があります。これは、Linux 上でdocker cpツールを使用して簡単に実行できます。使用方法は次のとおりです。

xr:d:DAFds8YL9ik:2、j:43601822907、t:23032003

Docker CP を使用して Docker コンテナからホストにファイルを転送する方法

Docker コンテナの外部にあるファイルをホスト システムに転送する必要がある場合、最も速く簡単な方法は Docker CP ツールを使用することです。まず、SSH 経由、または端末インターフェイスを備えた物理モニター経由でサーバーにログインします。

ログインしたら、Root アカウントにアクセスします。これを行うには 2 つの方法があります。suコマンドまたはsudo -sコマンドを使用します。

す

また

sudo -s

ログイン後、docker psコマンドを実行します。このコマンドを実行すると、実行中のすべてのコンテナが表示されます。ファイルの転送元となるコンテナの ID を検索します。次に、次のコマンドを使用してコンテナにログインします。

注: $id をコンテナ ID に置き換えます。

docker exec -it $id /bin/bash

上記のdocker execコマンドを使用して Docker コンテナにログインしたので、コンテナに移動し、Docker CP を使用して転送するファイルを圧縮する必要があります。

この例では、ディレクトリ内の「test」フォルダーを使用します/root/。ニーズに合わせてこのコマンドを変更する必要があります。

tar -czvf my-archive.tar.gz /root/test/

ファイルを圧縮したら、コンテナを終了します。次のexitコマンドを使用して、Docker コンテナーのターミナル インターフェイスを終了できます。

出口

最後に、ファイルをコンテナからホスト システムに転送します。

docker cp CONTAINER_ID:/path/to/archive.tar.gz /host/system/folder/

圧縮せずにファイルを転送する

(安全のため) 最初にファイルを圧縮せずにファイルを転送することはお勧めできません。いくつかのファイルを含むディレクトリを単純に転送したい場合、その方法は次のとおりです。

まず、コンテナにログインしてフォルダーのパスを確認します。以下のコマンドを使用してコンテナにログインできます。

す

docker exec -it $id /bin/bash

転送したいフォルダーへのパスを決定したら、コンテナーを終了します。次に、次のdocker cpコマンドを実行します。

docker cp CONTAINER_ID:/path/to/your/folder/ /host/system/folder/

Docker CP を使用してホストから Docker コンテナにファイルを転送する方法

Docker コンテナ経由でホストにファイルを転送するだけでなく、ホストからコンテナにファイルを転送して戻すこともできます。それには、Docker コンテナーに転送するファイルの場所を見つけます。

転送したいファイルが見つかったら、次のコマンドを使用してファイルを圧縮します。フォルダを圧縮すると転送が楽になります。

tar -czvf my-archive.tar.gz /path/to/your/folder/

フォルダーを Tar.GZ アーカイブに圧縮した後、ファイルの転送先コンテナーの ID を取得する必要があります。まず、 suまたはsudo -s を使用して root にログインします。

す

また

sudo -s

root アカウントにログインした後、docker psコマンドを実行します。このコマンドは、実行中のすべてのコンテナーに関する情報を表示します。次に、この情報を取得し、docker cpコマンドを使用して圧縮アーカイブを転送できます。

ドッカーps

docker cp /path/to/my-archive.tar.gz CONTAINER_ID:/path/to/destination/

圧縮せずにファイルを転送する

何も圧縮せずにコンテナに転送したい場合は、次の方法を実行します。まず、 suまたはsudo -s を使用して root にログインします。root としてログインした後、転送したいフォルダーのパスを見つけます。

フォルダー パスを取得したら、docker psコマンドを使用して、ファイルの転送先のコンテナーのコンテナー ID を取得します。次に、次のdocker cpコマンドを使用して、ファイルをシステムにコピーします。

docker cp /path/to/my/file/folder/ CONTAINER_ID:/path/to/destination/

Rsync を使用してホストから Docker コンテナーにファイルを転送する方法

ホストとの間でファイルを転送するには、 docker cpコマンドを使用するだけで十分です。ただし、コンテナからホストにファイルを Rsync することも可能です。SSH サーバーが有効になっていて、ホスト マシン上で実行されている必要があることに注意してください。

開始するには、ターミナルを介してホスト Linux サーバーに root としてログインします。suまたはsudo -s を使用して root アカウントにログインできます。root アカウントにログインした後、docker psコマンドを実行します。

す

また

sudo -s

ドッカーps

Docker コンテナ ID を見つけて、以下のコマンドを使用してログインします。次に、コンテナーのパッケージ マネージャーを使用して Rsync ツールをインストールします。必ず「$id」をコンテナ ID に置き換えてください。

docker exec -it $id /bin/bash

コンテナーのパッケージ マネージャーを使用して Rsync をインストールした後、以下の Rsync コマンドを使用してコンテナーからホストにファイルを同期します。

rsync -avz -e ssh /path/to/local/files/ user@remote:/path/to/remote/files/

コメントを残す

Fix Screen Tearing on Intel Graphics in Pardus Linux: A Result-Focused Guide

Fix Screen Tearing on Intel Graphics in Pardus Linux: A Result-Focused Guide

Fix Intel graphics screen tearing in Pardus Linux by checking X11 vs. Wayland, compositor settings, refresh rate, active Xorg driver, and TearFree only when appropriate.

firewall-cmdを使用してSLES 15ファイアウォールを設定する方法

firewall-cmdを使用してSLES 15ファイアウォールを設定する方法

SLES 15 で firewalld を設定する: ゾーンの確認、サービスまたはポートの許可、永続ルールの保存、安全なリロード、およびアクセスの検証。

SLESライブパッチ設定ガイド:再起動せずにカーネルアップデートを適用する

SLESライブパッチ設定ガイド:再起動せずにカーネルアップデートを適用する

SLES 15 SP7 でカーネルのライブパッチ適用を有効にし、再起動せずにサポートされている修正プログラムを適用し、有効なパッチを確認し、カーネルの再起動が必要な場合を把握します。

SUSE Linux Enterprise Server 15でFIPSモードを有効にする方法

SUSE Linux Enterprise Server 15でFIPSモードを有効にする方法

SUSEがサポートするセットアップユーティリティを使用してSLES 15でFIPSモードを有効にし、安全に再起動し、カーネルと暗号化ポリシーの状態を確認し、認証制限をチェックします。

セキュリティポリシーに違反することなく、Gooroom OSにGoogle Chromeをインストールする方法

セキュリティポリシーに違反することなく、Gooroom OSにGoogle Chromeをインストールする方法

公式の.debパッケージ、APT、ポリシーチェック、アップデートガイダンス、および管理対象デバイス向けの修正プログラムを使用して、Gooroom OSにGoogle Chromeを安全にインストールします。

SLESシステムログをリモートSyslogサーバーに安全にエクスポートする方法

SLESシステムログをリモートSyslogサーバーに安全にエクスポートする方法

rsyslog、TLS証明書、ピア名検証、キュー、検証、テスト機能を使用して、SLESシステムログをリモートのsyslogサーバーに安全に転送します。

SLES 15 Active DirectoryとSSSDの統合:ステップバイステップガイド

SLES 15 Active DirectoryとSSSDの統合:ステップバイステップガイド

YaSTを使用して、SSSD経由でSLES 15をActive Directoryに参加させます。DNSと時刻の設定、ドメインログインの構成、Kerberosの検証、SSSD、Winbind、およびrealmdの比較を行います。

Pardus Linux 上の Realtek RTL8821CE Wi-Fi ドライバーの問題を修正する

Pardus Linux 上の Realtek RTL8821CE Wi-Fi ドライバーの問題を修正する

Pardus Linux 上の RTL8821CE Wi-Fi の問題を解決するには、内蔵の rtw88 ドライバー、Realtek ファームウェア、rfkill、NetworkManager、および安全なフォールバックオプションを確認してください。

systemd-resolvedを使用してDebian 12で発生する「DNS解決の一時的な失敗」を修正する

systemd-resolvedを使用してDebian 12で発生する「DNS解決の一時的な失敗」を修正する

systemd-resolvedを使用して、Debian 12のDNS解決エラーを診断および修正します。これには、resolv.conf、NetworkManager、networkd、キャッシュ、および検証が含まれます。

Pardus LinuxをWindows 11と安全にデュアルブートする方法

Pardus LinuxをWindows 11と安全にデュアルブートする方法

Windows 11のバックアップ、ボリュームの縮小、UEFI USBからの起動、既存のEFIパーティションとリカバリパーティションの保護を行うことで、Windows 11の横にPardus 25.2をインストールできます。