対象者
- Docker使いたいけどよくわからない
- Docker使い始めたけどコマンド言われるがままに打っていてよくわかってない
- コマンドと動作を図示で理解したい
こんな人の理解の一助になれば幸いです。
(前提条件: docker version 26.0.2)
Dockerコマンドを可視化してみた
勝手にローカルのPCをmacにしているのはご愛嬌です
※2024/5/16 9時: 訂正版の画像に差し替え
コメントで間違いを指摘していただきありがとうございます🙇
細かいオプションなどは一旦無視してライフサイクルの部分を抜き出してみました。
Docker imageの操作
dockerの肝となるコンテナは、imageから生成します。
そのimageは、
- docker hubからpullしてくる
- dockerfileからbuildする
この2択で生成します。
コマンドは、
docker image build .
など、
docker image ~
と記述してimageを作る・削除するといったものになる。
Docker Containerの操作
続いて、コンテナの操作についてですが、基本的に、 docker container ~
と記述して、
コンテナを
- 生成
- 起動
- 停止
- 削除
する形になります。
ただ、imageから一気にコンテナを生成しつつ起動する
docker container run ~
がよく使われるのでこっちを覚えている人が多いかなと思います。
そのうち、毎回 docker container run --rm -dit -p 8080:8080 ~
のような長ったらしいコマンドを撃ち続けることに嫌気が刺してきたら次は、 docker-compose.yml
を書けるようになると楽になります。
Docker compose のライフサイクルについても図解してみましたので、
よければこちらの記事もご覧ください。