サーチ…


構文

  • ドッカー画像[オプション] [リポジトリ[:TAG]]
  • docker inspect [オプション] CONTAINER | IMAGE [CONTAINER | IMAGE ...]
  • ドッカープル[オプション]名前[:TAG | @DIGEST]
  • ドッカーrmi [オプション]イメージ[イメージ...]
  • ドッカータグ[オプション]画像[:タグ] [レジストリホスト/] [ユーザー名/]名前[:TAG]

Docker Hubから画像を取得する

通常、画像はDocker Hubから自動的に取得されます。 Dockerは、Dockerホスト上にまだ存在していないDocker Hubから画像を取得しようとします。例えば、使用してdocker run ubuntuするときubuntuイメージがドッカーホストになっていないのは、ドッカーは、最新のプルを開始しますubuntuイメージを。 docker pullを使用してDocker Hubから手動でイメージを取得または更新することによって、イメージを個別にプルすることができます。

docker pull ubuntu
docker pull ubuntu:14.04

別のイメージレジストリからプルする、または特定のバージョンのイメージをプルするための追加オプションが存在します。代替レジストリを示すには、フルイメージ名とオプションのバージョンを使用します。たとえば、次のコマンドは、 ubuntu:14.04イメージをregistry.example.comレジストリからubuntu:14.04しようとします。

docker pull registry.example.com/username/ubuntu:14.04

ローカルにダウンロードされた画像の一覧表示

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              693bce725149        6 days ago          967 B
postgres            9.5                 0f3af79d8673        10 weeks ago        265.7 MB
postgres            latest              0f3af79d8673        10 weeks ago        265.7 MB

画像の参照

イメージの名前を取るDockerコマンドは、4つの異なる形式を受け入れます。

タイプ
ショートID 693bce725149
hello-world (デフォルトは:latestタグ)
名前+タグ hello-world:latest
ダイジェスト hello-world@sha256:e52be8ffeeb1f374f440893189cd32f44cb166650e7ab185fa7735b7dc48d619

注:画像がそのダイジェストを使用して最初に引っ張られた場合にのみ、ダイジェストで画像を参照できます。イメージのダイジェストを表示するには(使用可能な場合)、 docker images --digests実行します。

画像の削除

docker rmiコマンドはイメージを削除するために使用されます:

docker rmi <image name>

イメージを削除するには、完全なイメージ名を使用する必要があります。イメージにレジストリ名を削除するタグが付いていない限り、レジストリ名を指定する必要があります。例えば:

docker rmi registry.example.com/username/myAppImage:1.3.5

代わりにIDで画像を削除することもできます:

docker rmi 693bce725149

便宜上、指定された部分文字列が曖昧でない限り、画像IDの最初の数文字だけを指定することで、画像IDで画像を削除することができます。

docker rmi 693

注:イメージは、そのイメージを使用する既存のコンテナがあっても削除できます。ドッカーrmiはイメージを単に「タグ付け」しません。

コンテナが画像を使用していない場合は、ガベージコレクションされます。コンテナがイメージを使用している場合、それを使用するすべてのコンテナが削除されると、そのイメージはガベージコレクションされます。例えば:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED                  STATUS                     PORTS               NAMES
5483657ee07b        hello-world         "/hello"            Less than a second ago   Exited (0) 2 seconds ago                       small_elion

$ docker rmi hello-world
Untagged: hello-world:latest

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED                  STATUS                      PORTS               NAMES
5483657ee07b        693bce725149        "/hello"            Less than a second ago   Exited (0) 12 seconds ago                       small_elion

開始されていないコンテナですべてのイメージを削除する

開始コンテナのないすべてのローカルイメージを削除するには、イメージのリストをパラメータとして指定します。

docker rmi $(docker images -qa)

すべての画像を削除

開始されたコンテナがあるかどうかにかかわらずイメージを削除するには、強制フラグ( -f )を使用します。

docker rmi -f $(docker images -qa)

ダングリング画像を削除する

イメージがタグ付けされておらず、コンテナによって使用されていない場合、イメージは「ぶら下がっている」ため、次のように削除される可能性があります。

docker images -q --no-trunc -f dangling=true | xargs -r docker rmi

Docker Hubで画像を検索する

検索コマンドを使用すると、 Docker Hubで画像を検索できます。

docker search <term>

例えば:

$ docker search nginx
NAME                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
nginx                     Official build of Nginx.                        3565      [OK]
jwilder/nginx-proxy       Automated Nginx reverse proxy for docker c...   717                  [OK]
richarvey/nginx-php-fpm   Container running Nginx + PHP-FPM capable ...   232                  [OK]
...

画像の検査

docker inspect <image>

出力はJSON形式です。 jqコマンドラインユーティリティを使用して、目的のキーのみを解析して印刷することができます。

docker inspect <image> | jq -r '.[0].Author'

上記のコマンドは画像の作者名を表示します。

画像にタグを付ける

画像にタグを付けると、さまざまな画像のバージョンを追跡するのに便利です。

docker tag ubuntu:latest registry.example.com/username/ubuntu:latest

タグ付けの別の例:

docker tag myApp:1.4.2 myApp:latest
docker tag myApp:1.4.2 registry.example.com/company/myApp:1.4.2

Dockerイメージの保存と読み込み

docker save -o ubuntu.latest.tar ubuntu:latest

このコマンドは、 ubuntu:latestイメージを現在のディレクトリにubuntu.latest.tarという名前のtarballアーカイブとして保存します。このtarballアーカイブは、 rsyncなどを使用して別のホストに移動するか、ストレージにアーカイブすることができます。

tarballが移動されると、次のコマンドはファイルからイメージを作成します:

docker load -i /tmp/ubuntu.latest.tar

現在、 ubuntu:latestからコンテナを作成することは可能です。通常のようにubuntu:latestイメージです。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow