docker container / image コマンド新旧比較

More than 1 year has passed since last update.


概要

2017年1月18日にリリースされた Docker v1.13 以降(今日現在の v17.03.0-ce )は、 docker コマンドラインの命令体系が再編成されました。本記事では変更に至った背景と、新旧コマンド体系の比較情報を整理します。


新しいサブコマンド体系の導入と背景

新しいコマンド体系の導入に至ったのは、docker のトップレベル・コマンド群が 40 を越える状況(当時)となったためです。コマンドには頻繁に使うものもあれば、使わないものもあり、再編成されることになりました。

v1.13から論理オブジェクト単位にコマンドが再編成されました。これは、「」(コンテナやイメージ、ネットワーク)を、「どうするか」(作成、一覧、起動、停止)で扱います。そのため、従来よりもコマンドの利用目的が分かりやすくなります。たとえば、コンテナを管理する docker container サブコマンド群や、イメージを管理する docker image サブコマンド群の下で、これまでのコマンドが使えるようになります。

例:



  • docker psdocker container ls (コンテナの一覧)


  • docker imagesdocker image ls (イメージの一覧)


  • docker historydocker image history (イメージの履歴)

そして、これらの新コマンドは従来のコマンドと互換性があり、サポートは続いています。しかし、v1.13 以降、Docker は新しいコマンド体系の採用を推奨しています。


docker container コマンドはコンテナを管理

新コマンド
旧コマンド
説明

docker container attach
docker attach
実行中のコンテナにアタッチ

docker container commit
docker commit
コンテナに対する変更から新しいイメージを作成

docker container cp
docker cp
コンテナとローカル間でファイルとディレクトリのコピー

docker container create
docker
新しいコンテナの作成

docker container diff
docker diff
イメージとコンテナの変更情報を調べる

docker container exec
docker exec
実行中のコンテナ内でコマンド実行

docker container export
docker export
コンテナのファイルシステムをtarアーカイブ化

docker container inspect
docker container inspect
コンテナの詳細情報を表示

docker container kill
docker kill
コンテナのプロセスを停止(kill)

docker container logs
docker logs
コンテナのログを表示

docker container ls

docker ps

コンテナ一覧の表示

docker container pause
docker pause
コンテナのプロセスを一時停止(pause)

docker container port
docker port
コンテナが使用しているポート情報の表示

docker container prune
(v1.13~)
停止中の全コンテナを削除

docker container rename
docker rename
コンテナの名称を変更

docker container restart
docker restart
コンテナを再起動

docker container rm
docker rm
コンテナの削除

docker container run
docker run
新しいコンテナを実行

docker container start
docker start
停止中のコンテナを起動

docker container stats
docker stats
コンテナのリソース使用状況を表示

docker container stop
docker stop
実行中のコンテナを停止

docker container top
docker top
コンテナが実行しているプロセスを表示

docker container unpause
docker unpause
一時停止中のコンテナを再開

docker container update
docker update
コンテナの(リソース)設定を変更

docker container wait
docker wait
コンテナが停止するまで待機

強調部分は新旧コマンドで単純に docker container コマンド と実行できないものです。また、リファレンスには書かれていませんが、 docker container psdocker container ls でも docker ps と同じ結果が表示できます。

docker-container.png


docker image コマンドはイメージを管理

新コマンド
旧コマンド
説明

docker image build
docker build
Dockerfile からイメージを構築(ビルド)

docker image history
docker history
イメージの履歴を表示

docker image import
docker import
tar 形式のファイルを読み込み、イメージを作成

docker image inspect
docker inspect
イメージの詳細情報を表示

docker image load
docker load
tar 形式または標準入力からイメージを読み込む

docker image ls

docker images

イメージ一覧表示

docker image prune
(v1.13~)
使用していないイメージを削除

docker image pull
docker pull
イメージをレジストリから取得

docker image push
docker push
イメージをレジストリに送信

docker image rm

docker rmi

イメージを削除

docker image save
docker save
イメージを tar 形式または標準出力にストリーム

docker image tag
docker tag
イメージを参照する新しいタグを付ける

リファレンスには書かれていませんが、 docker image list でも docker images と同じ結果が表示できます。

docker-images.png


参考