Dockerコマンド一覧
コマンドに「image、container」が付いているものは新しいバージョンでのコマンドになります。docker images
: 古いバージョンのコマンドdocker image ls
: 新しいバージョンのコマンド
これらの新コマンドは従来のコマンドと互換性があり、サポートは続いています。しかし、v1.13
以降、Docker は新しいコマンド体系の採用を推奨しています。
「image、container」が付いているコマンドの方を使用するようにしましょう。
Docker Hubにログイン | docker login [option] [server] |
Docker Hubからログアウト | docker logout [server] |
Docker Hubにアップロード | docker push [optioin] [image[:tag]] |
イメージのダウンロード | docker pull [option] [image[:tag]] docker image pull [option] [image[:tag]] |
イメージの一覧表示 | docker image ls [option] [image[:tag]] docker images [option] [image[:tag]] |
イメージの詳細情報 | docker inspect [option] [image] docker image inspect [option] [image] |
イメージの削除 | docker image rm [option] [image] docker rmi [option] [image] |
イメージの一括削除 | docker image prune [option] |
Dockerfileからイメージの作成 | docker image build [option] [path] |
コンテナの生成 | docker run [option] [image[:tags]] [arg] docker container run [option] [image[:tags]] [arg] |
コンテナの起動 | docker start [option] [container] docker container start [option] [container] |
コンテナの停止 | docker stop [option] [container] docker container stop [option] [container] |
コンテナの再起動 | docker restart [option] [container] docker container restart [option] [container] |
コンテナの中断/再開 | docker pause [container] docker container pause [container] |
コンテナの削除 | docker rm [option] [container] docker container rm [option] [container] |
コンテナの一括削除 | docker container prune [option] |
コンテナの一覧表示 | docker container ls [option] docker ps [option] |
稼働コンテナに接続 | docker attach [container] docker container attach [container] |
稼働コンテナでプロセス実行 | docker exec [option] [container] docker container exec [option] [container] |
コンテナの名前変更 | docker rename [old_container] [new_container] docker container rename [old_container] [new_container] |
コンテナ内のファイルをコピー | docker cp [container[:path]] [host[:path]] docker container cp [container[:path]] [host[:path]] |
コンテナからイメージの作成 | docker commit [option] [container] [image[:tags]] docker container commit [option] [container] [image[:tags]] |
Docker Hubの操作
Docker Hubにログイン
Docker Registryにログインします。
- オプション
--password
,-p
: パスワード--username
,-u
: ユーザ名
$ docker login [option] [server]
$ # 例
$ docker login
Docker Hubからログアウト
Docker Registryからログアウトします。
$ docker logout [server]
$ # 例
$ docker logout
Docker Hubにアップロード
リポジトリまたはレジストリに対してイメージをプッシュします。
$ docker push [optioin] [image[:tag]]
$ # 例
$ docker push tekkubu/webserver:1.0
Dockerイメージの操作
イメージのダウンロード
レジストリからイメージまたはリポジトリを取得します。
$ docker pull [option] [image[:tag]]
$ docker image pull [option] [image[:tag]]
$ # 例
$ docker pull python:3.8
イメージの一覧表示
イメージの一覧を出力します。
- オプション
--all
,-a
: 全イメージを表示します。
$ docker image ls [option] [image[:tag]]
$ docker images [option] [image[:tag]]
$ # 例
$ docker image ls -a
イメージの詳細情報
Dockerオブジェクトに対する低レベル情報を返します。
$ docker inspect [option] [image]
$ docker image inspect [option] [image]
$ # 例
$ docker image inspect python
イメージの削除
1つまたは複数イメージを削除します。
- オプション
--force
,-f
: イメージを強制的に削除します。
$ docker image rm [option] [image]
$ docker rmi [option] [image]
$ # 例
$ docker image rm -f python
イメージの一括削除
未使用のイメージを削除します。
- オプション
--all
,-a
: タグづけなし、参照なしを問わず、未使用のイメージをすべて削除します。
$ docker image prune [option]
$ # 例
$ docker image prune -a
Dockerfileからイメージの作成
Dockerfileからイメージをビルドします。
- オプション
--tag
,-t
: 任意のイメージ名とタグ名を指定します
$ docker image build [option] [path]
$ # 例
$ docker build -t sample:1.0 .
Dockerコンテナの操作
コンテナの生成/起動
新たなコンテナー内においてコマンドを実行します。
- オプション
--add-host
: ホスト名とIPアドレスをマッピングします。--detach
,-d
: コンテナーをバックグラウンド実行し、コンテナーIDを出力します。--interactive
,-i
: ホストのターミナルからの入力がコンテナの標準入力につなげます。--tty
,-t
: コンテナの標準出力をホストの標準出力につなげます。--user
,-u
: ユーザー名または UIDを指定します。--publish
,-p
: ホストに対してコンテナーのポートを公開します。--volume
,-v
: ボリュームをバインドマウントします。
--env
,-e
: 環境変数を設定します。--env-file
: 環境変数ファイルを読み込みます。
$ docker run [option] [image[:tags]] [arg]
$ docker container run [option] [image[:tags]] [arg]
$ # 例
$ docker container run -it --name code-server -p 8080:8080 \
-v "$HOME/.config:/home/coder/.config" \
-v "$PWD:/home/coder/project" \
-u "$(id -u):$(id -g)" \
-e "DOCKER_USER=$USER" \
codercom/code-server:latest
コンテナの起動
1つまたは複数の停止中コンテナーを起動します。
- オプション
--interactive
,-i
: ホストのターミナルからの入力がコンテナの標準入力につなげます。
$ docker start [option] [container]
$ docker container start [option] [container]
$ # 例
$ docker container start 88be9c159415
コンテナの停止
1つまたは複数の実行中コンテナーを停止します。
$ docker stop [option] [container]
$ docker container stop [option] [container]
$ # 例
$ docker container stop 88be9c159415
コンテナの再起動
1つまたは複数コンテナーを再起動します。
$ docker restart [option] [container]
$ docker container restart [option] [container]
$ # 例
$ docker container restart 88be9c159415
コンテナの中断/再開
1つまたは複数コンテナー内部における全プロセスを一時停止します。
$ docker pause [container]
$ docker container pause [container]
$ # 例
$ docker container pause
コンテナの削除
1つまたは複数コンテナーを削除します。
- オプション
--force
,-f
: 実行中コンテナーを強制的に削除します。
$ docker rm [option] [container]
$ docker container rm [option] [container]
$ # 例
$ docker container rm 88be9c159415
コンテナの一括削除
停止中のコンテナーをすべて削除します。
$ docker container prune [option]
$ # 例
$ docker container prune
コンテナの一覧表示
コンテナーを一覧表示します。
- オプション
--all
,-a
: 全コンテナーを表示します。(デフォルトは実行中コンテナーのみ。)
$ docker container ls [option]
$ docker ps [option]
$ # 例
$ docker container ls
稼働コンテナの操作
稼働コンテナに接続
ローカルの標準入出力やエラー出力を実行中コンテナーにアタッチします。
$ docker attach [container]
$ docker container attach [container]
$ # 例
$ docker container attach webserver
稼働コンテナでプロセス実行
実行中コンテナーにおいてコマンドを実行します。
- オプション
--detach
,-d
: デタッチモード。コマンドをバックグラウンドで実行します。--interactive
,-i
: ホストのターミナルからの入力がコンテナの標準入力につなげます。
--tty
,-t
: コンテナの標準出力をホストの標準出力につなげます。
--user
,-u
: ユーザー名または UIDを指定します。--env
,-e
: 環境変数を設定します。--env-file
: 環境変数ファイルを読み込みます。
$ docker exec [option] [container]
$ docker container exec [option] [container]
$ # 例
$
コンテナの名前変更
コンテナーの名前を変更します。
$ docker rename [old_container] [new_container]
$ docker container rename [old_container] [new_container]
$ # 例
$ docker container rename webserver newwebserver
コンテナ内のファイルをコピー
コンテナーやローカルファイルシステム間でファイル、フォルダーをコピーします。
$ docker cp [container[:path]] [host[:path]]
$ docker container cp [container[:path]] [host[:path]]
$ # 例
$ container -> host
$ docker cp webserver:/root/test.txt .
$ host -> container
$ docker cp ./test.txt webserver:/root/test.txt
コンテナからイメージの作成
コンテナーの変更に基づいて新たなイメージを生成します。
$ docker commit [option] [container] [image[:tags]]
$ docker container commit [option] [container] [image[:tags]]
$ # 例
$ docker commit webserver tekkubu/webserver:1.0
\ より詳しく知りたい方はこちらの本がおすすめです /