ID , 'noindex' , true)){ echo ''; } ?>

(Docker) 基本的なコマンド一覧

docker-command
docker-icon

 

本記事ではDockerの基本的なコマンドを紹介する
大まかに下記のようなDockerコマンドについて、メモしていく。

 

Dockerの基本的なコマンド
  1. Dockerイメージに関連するコマンド
  2. Dockerコンテナに関連するコマンド
  3. docker-composeでのコンテナ実行
  4. 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とは?使い方・メリットを解説

 

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

 

記事が気に入った方はシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です