Docker cp コマンド
docker cpこのコマンドは、Dockerコンテナとホストマシン間でファイルまたはディレクトリをコピーするために使用します。
docker cpこのコマンドは、コンテナからホスト、またはホストからコンテナへのファイルコピー操作をサポートします。
構文
docker cp [OPTIONS] SRC_PATH CONTAINER:DEST_PATH docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH
SRC_PATH: ソースパス(コンテナ内のパスまたはホスト上のパスのいずれか)。CONTAINER: コンテナ名またはID。DEST_PATH: 宛先パス(コンテナ内のパスまたはホスト上のパスのいずれか)。
コンテナからホストへファイルをコピー
docker cp my_container:/path/in/container /path/on/host
コンテナ my_container 内の /path/in/container ファイルまたはディレクトリを、ホスト上の /path/on/host にコピーします。
ホストからコンテナへファイルをコピー
docker cp /path/on/host my_container:/path/in/container
ホスト上の /path/on/host ファイルまたはディレクトリを、コンテナ my_container 内の /path/in/container にコピーします。
コンテナからホストへディレクトリをコピー
docker cp my_container:/path/in/container /path/on/host
コンテナ内の /path/in/container ディレクトリとその内容を、ホスト上の /path/on/host にコピーします。
ホストからコンテナへディレクトリをコピー
docker cp /path/on/host my_container:/path/in/container
ホスト上の /path/on/host ディレクトリとその内容を、コンテナ my_container 内の /path/in/container にコピーします。
例
コンテナからホストへファイルをコピー
コンテナを起動し、ファイルを作成します:
docker run -d --name my_container ubuntu bash -c "echo 'Hello, Docker!' > /hello.txt"
コンテナからホストへファイルをコピー:
docker cp my_container:/hello.txt ./hello.txt
コンテナ内の /hello.txt ファイルを現在のホストディレクトリにコピーします。
コピーしたファイルの内容を確認:
cat hello.txt
出力:
Hello, Docker!
ホストからコンテナへファイルをコピー
ファイルをコンテナにコピー:
docker cp ./hello.txt my_container:/hello.txt
ホスト上の hello.txt ファイルを、コンテナ内の /hello.txt にコピーします。
コンテナに入ってファイルの内容を確認:
docker exec -it my_container cat /hello.txt
出力:
Hello, Docker!
注意事項
docker cpこのコマンドはソースファイルまたはディレクトリを変更せず、コピー操作のみを行います。- 宛先パスは有効なパスである必要があり、ホストまたはコンテナに書き込み操作を行うための十分な権限が必要です。
- 大きなファイルや大きなディレクトリを扱う場合、コピー操作に時間がかかることがあります。
docker cpこのコマンドは、Dockerが提供する便利なツールで、コンテナとホスト間でファイルまたはディレクトリをコピーするために使用します。このコマンドは、バックアップ、設定更新、ログ収集などの操作に適しており、ユーザーがコンテナ内のファイルを簡単に管理・操作するのに役立ちます。
その他の拡張
Docker コマンド大全