Docker コマンド一覧

こんにちわ。
最近、訳あって仮想サーバーの環境をDockerに切り替えました。

というわけで、いつでも参照ができるように、Dockerのコマンド一覧を記載しておきます。

◇一覧系 ==================================

起動中のDockerコンテナ一覧

> docker ps
CONTAINER ID IMAGE          COMMAND     CREATED        STATUS        PORTS  NAMES
5ba3a2a22341 centos:centos7 "/bin/bash" 30 seconds ago Up 29 seconds        centos7b

Dockerコンテナ一覧

> docker ps -a
CONTAINER ID IMAGE          COMMAND     CREATED        STATUS        PORTS  NAMES
5ba3a2a22341 centos:centos7 "/bin/bash" 30 seconds ago Up 29 seconds        centos7b
1f7f96f02acf centos:centos7 "/bin/bash" 7 minutes ago  Up 4 minutes         centos7f

Dockerイメージ一覧

> docker images
REPOSITORY   TAG      IMAGE ID      CREATED       SIZE
centos       centos7  7e6257c9f8d8  2 months ago  203MB
hello-world  latest   bf756fb1ae65  10 months ago 13.3kB

◇削除系 ==================================

Dockerコンテナ削除

// ※コンテナの複数指定可能
> docker rm centos7b centos7f

Dockerイメージ削除

// ※イメージの複数指定可能
// docker rmi [イメージのリポジトリ名]:[タグ]の形で指定
> docker rmi centos:centos7 hello-world:latest
Untagged: centos:centos7 Untagged: centos@sha256:19a79828ca2e505eaee0ff38c2f3fd9901f4826737295157cc5212b7a372cd2b Deleted: sha256:7e6257c9f8d8d4cdff5e155f196d67150b871bbe8c02761026f803a704acb3e9
Deleted: sha256:613be09ab3c0860a5216936f412f09927947012f86bfa89b263dfa087a725f81
Untagged: hello-world:latest
Untagged: hello-world@sha256:8c5aeeb6a5f3ba4883347d3747a7249f491766ca1caa47e5da5dfcf6b9b717c0
Deleted: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b
Deleted: sha256:9c27e219663c25e0f28493790cc0b88bc973ba3b1686355f221c38a36978ac63

◇構築系 ==================================

Dockerイメージを取得

// docker pull [イメージのリポジトリ名]:[タグ]
> docker pull centos:centos7
centos7: Pulling from library/centos
2d473b07cdd5: Pull complete
Digest: sha256:0f4ec88e21daf75124b8a9e5ca03c37a5e937e0e108a255d890492430789b60e
Status: Downloaded newer image for centos:centos7
docker.io/library/centos:centos7

Dockerコンテナの作成&起動&ログイン

// docker run -it --name=[コンテナ名] [イメージのリポジトリ名]:[タグ] /bin/bash
> docker run -it --name="centos7" centos:centos7 /bin/bash

Dockerコンテナにログイン

// docker exec -it [コンテナ名] /bin/bash
> docker exec -it centos7 /bin/bash

// docker attach [オプション] <コンテナ名>
> docker attach centos7
attachexec
コンテナ内でシェルが動作していなければ接続することができない。稼働コンテナでPID=1のプロセスを実行するため、コンテナ内でシェルが動作している必要がない。
exitコマンドで抜けるとコンテナが停止してしまうexitコマンドで抜けるてもコンテナは停止しない