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

  • 315
    いいね
  • 1
    コメント

概要

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

参考