docker import¶
補足説明¶
URL
か -
(ダッシュ)の指定、あるいは STDIN
(標準入力)から直接データを取り込みます。 URL
はアーカイブ( .tar、.tar.gz、.tgz、.bzip、.tar.xz、txz)に含まれる圧縮ファイルシステムや、Docker ホスト上の個々のファイルを指定します。アーカイブを指定した場合は、 Docker はコンテナの /
(ルート)以下の相対パスとして展開します。個々のファイルを指定する場合、ホスト上のフルパスを指定する必要があります。リモートの場所から import する場合、 URI
の形式は、 http://
か https://
プロトコルで始まる必要があります。
--change
オプションが適用されるのは Dockerfile
命令でイメージの作成時です。サポートされている Dockerfile
の命令は、 CMD
ENTRYPOINT
ENV
EXPOSE
ONBUID
USER
VOLUME
WORKDIR
です。
コマンドの使用例は、以下の 使用例のセクション をご覧ください。
オプション¶
名前, 省略形 |
デフォルト |
説明 |
---|---|---|
|
イメージ作成時に Dockerfile 命令を追加 |
|
|
読み込んだイメージにコミット・メッセージを設定 |
|
|
【API 1.32+】サーバがマルチプラットフォームに対応している場合、プラットフォームを指定 |
使用例¶
ローカルのファイルから読み込む¶
STDIN
とパイプを経由して、 Docker に読み込みます。
$ cat exampleimage.tgz | docker import - exampleimagelocal:new
コミット・メッセージを付けて読み込みます。
$ cat exampleimage.tgz | docker import --message "New image imported from tarball" - exampleimagelocal:new
ローカルのアーカイブから docker に読み込みます。
$ docker import /path/to/exampleimage.tgz
ローカルのディレクトリから読み込む¶
$ sudo tar -c . | docker import - exampleimagedir
新しい設定でローカルのディレクトリを読み込む¶
$ sudo tar -c . | docker import --change "ENV DEBUG true" - exampleimagedir
この例では sudo
を使っているのに気をつけてください。これは、tar アーカイブを処理する時にファイル(特に root )の所有権を保持するためです。root でなければ(あるいは sudo を使わなければ)、tar の利用時に権限を得られない可能性があります。