
本記事ではDockerの基本的なコマンドを紹介する
大まかに下記のようなDockerコマンドについて、メモしていく。
- Dockerイメージに関連するコマンド
- Dockerコンテナに関連するコマンド
- docker-composeでのコンテナ実行
- Docker pruneによる破棄
なお、Dockerの基本的な概念など、基礎的な知識については下記記事にて紹介しているので、参考にして欲しい。
①Dockerイメージに関連するコマンド
初めに、Dockerイメージに関するコマンドについてメモ。
docker search [option] イメージ名
Docker Hubのレジストリに登録されているレポジトリを検索できる。
検索結果はSTARSの順に表示される。
ただ、タグまでは取得できない。
docker search --limit 5 mysql
docker image pull [option] リポジトリ名:タグ名
DockerレジストリからDockerイメージをダウンロードしてくる。
タグを省略するとデフォルトタグ(大体latest)が指定される。
docker image pull mysql:5.7
docker image ls
ホストに保存されているDockerイメージの一覧を表示する。
docker image build -t イメージ名:[タグ名] Dockerfileのパス
Dockerfileを元にDockerイメージを作成する。
-tオプションはほぼ必ず指定(タグを指定する)。
Dockerfileのパス指定が必須。
docker image build -t example/test:latest .
docker image tag 元イメージ名[:タグ] 新イメージ名[:タグ]
Dockerイメージの特定のバージョンにタグ付けする。
docker image tag example/test:latest example/test:0.1.0
docker rmi -f イメージID
Dockerイメージをホスト上から削除する。
イメージIDは、docker image lsで表示されるので、そこからコピペする。

②Dockerコンテナに関連するコマンド
次に、Dockerコンテナに関するコマンドをメモ。
docker container run [option] イメージ名[:タグ]
DockerイメージからDockerコンテナを作成・実行するコマンド。
-d |
バックグラウンドで実行オプション。大体つける。 |
-p ホスト側ポート:コンテナ側ポート |
ポートフォワードオプション。 |
–rm |
コンテナ終了時にコンテナを破棄するオプション。 |
–name コンテナ名 |
コンテナに名前をつけるオプション。 |
-v |
ホストとコンテナ間でディレクトリ、ファイルを共有するオプション |
docker container ls [option]
Dockerコンテナの一覧を表示するコマンド。
-a |
停止中のコンテナまで含めて表示するオプション。 |
–filter “status=exited” |
停止中のコンテナのみ表示するオプション。 |
docker container ls -a
docker ps
docker container lsと同じ。
docker container stop コンテナIDまたはコンテナ名
起動中のDockerコンテナを停止する。
コンテナの破棄までは行わない点に注意。
コンテナIDまたはコンテナ名は、docker container lsで表示されるので、コピペする。
docker container restart コンテナIDまたはコンテナ名
停止中のDockerコンテナを再起動する。
起動中のコンテナを再起動するという意味ではないので注意。
docker container rm コンテナIDまたはコンテナ名
停止しているDockerコンテナをディスクから破棄する(起動中だとエラーになる)。
コンテナは停止していても、ディスクに残り続けるので、使っていないコンテナはこのコマンドで消してやる必要がある。
-f |
起動中コンテナでも破棄できるオプション |
docker container exec -it コンテナIDまたはコンテナ名 シェル名
あたかもsshでログインするかのように、起動中のDockerコンテナにログインする。
docker container exec -it testContainer bash
docker container cp コピー元 コピー先
Dockerコンテナ間、Dockerコンテナ-ホスト間でファイルをコピーする。
#コンテナ→ホストにコピーする場合
docker container cp [option] コンテナIDまたはコンテナ名:コンテナ内コピー元 ホストのコピー先
#ホスト→コンテナにコピーする場合
docker container cp [option] ホストのコピー元 コンテナIDまたはコンテナ名:コンテナ内コピー先
③docker-composeでのコンテナ実行
Docker Composeとは、
docker-composeコマンドを1 回実行するだけで、複数のコンテナを一度に起動したり停止できる仕組みのこと。
起動・停止したいコンテナ群の情報は、docker-compose.ymlと言うファイルに記述する。
なおDocker Composeに関する基本的な知識は、下記記事にて紹介しているので、参考にして欲しい。
docker-compose up -d –build
docker-compose.ymlの定義を元に、コンテナ群を起動・作成する。
–build |
コンテナ群を起動・作成する際、元となるイメージを、Dockerfileを元に必ずビルドするオプション |
–buildを付けないと、初回以降、キャッシュのイメージを使用しようとするため、Dockerfileを使用する場合は、付けた方が無難。
docker-compose down
docker-compose.ymlの定義してあるコンテナ群を停止・削除する。
④Docker pruneによる破棄
最後に、pruneコマンドと言う、イメージやコンテナを一度に削除するコマンドをメモ。
docker image prune
不要なイメージを削除する。
※ちょっと定義が曖昧、よくわかってない
docker container prune
実行していないコンテナを一括で削除する。
docker system prune
利用していないDockerコンテナやイメージ、ボリューム、ネットワークなど全てを削除する。
関連記事
https://qiita.com/Esfahan/items/52141a2ad741933d7d4c
https://docs.docker.jp/engine/reference/commandline/index.html