GNU/Linux >> Linux の 問題 >  >> Panels >> Docker

Dockerイメージからファイルを抽出しますか?

イメージを実行せずにDockerイメージからファイルを抽出したいのですが。

docker save オプションは、特定のファイルのtarを解除するためだけに大量のファイルを保存するため、現在実行可能なオプションではありません。

承認された回答:

次のコマンドを使用して、画像からファイルを抽出できます。

docker create $image  # returns container ID
docker cp $container_id:$source_path $destination_path
docker rm $container_id

docker createによると ドキュメント、これはコンテナを実行しません:

docker create コマンドは、指定されたイメージ上に書き込み可能なコンテナーレイヤーを作成し、指定されたコマンドを実行するためにイメージを準備します。次に、コンテナIDがSTDOUTに出力されます。 。これはdocker run -dに似ています コンテナが起動されないことを除いて。その後、docker start <container_id>を使用できます 任意の時点でコンテナを起動するコマンド。

参考までに(私の以前の回答)、画像からファイルを抽出する効率の低い方法は次のとおりです。

docker run some_image cat $file_path > $output_path

Docker
  1. Docker イメージ内のファイルを更新/追加する方法

  2. ホストから Docker コンテナのネットワーク名前空間にアクセスする方法

  3. Docker コンテナのファイル システムの探索

  1. WindowsのIsoファイルからUbuntuをインストールしますか?

  2. Dockerコンテナに単一のファイルをマウントまたはシンボリックリンクする方法

  3. Docker コンテナーで実行されている OS はどれですか?

  1. Dockerの概要

  2. Dockerイメージに基づいてデプロイされたコンテナーを更新する

  3. Dockerコンテナからカスタムイメージを作成する方法