実践Dockerコマンドチートシート
May 15, 2022 23:40 · 1797 words · 4 minute read
ほげさんの『実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本』を読みました。
実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
これまでは必要に応じて公式ドキュメントの一部を確認する程度で、Dockerについてのまとまった基礎知識を学習したことはありませんでした。
実践Dockerのおかげで、今更ではありますがDockerの基礎固めができたと思います。
今後パッと見返す用のチートシートとして、実践Dockerで解説されていたコマンドと使用例をメモしておきます。
目次
実践 Docker?
ほげさんがzennで無料公開してくれているDockerの入門書です。
実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
「仮想マシンとコンテナの違いは?」から始まり、Dockerを使うために抑えておきたい基礎知識を丁寧に解説してくれています。
さらに、解説した基礎知識を応用して、Docker Composeを使った実際の開発環境で使われるような環境をコンテナで構築するハンズオンも含まれています。
コンテナを操作するコマンドチートシート
コンテナを起動する
$ docker container run [option] <image> [command]
例1. コンテナを起動し、バックグラウンドで実行する。
$ docker container run \
--publish 8080:80 --detach –name nginx-dev nginx:1.21
例2. nginxのコンテナでbashを起動し、コンテナ環境のエラー調査などをする。操作終了後はコンテナを削除する。
$ docker container run -rm \
--publish --interactive --tty --rm
nginx bash
解説ページリンク
2部: コンテナ起動時の基本の指定|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
コンテナの一覧
$ docker container ls [option]
例
$ docker container ls -all
「–all」をつけない場合は起動中のコンテナのみ一覧表示される。
「–all」をつけると停止しているコンテナも一覧表示される。
起動中のコンテナを停止する
$ docker container stop [option] <container>
停止済みコンテナを削除する
$ docker container rm [option] <container>
コンテナに接続する
$ docker container exec [option] <container> command
例. web-serverという名前をつけたコンテナに接続し、bashプロセスを実行する
$ docker container exec web-server bash
イメージの一覧
$ docker image ls [option]
イメージやレイヤーについての解説ページリンク
- 2部: イメージの基礎|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
- 2部: Dockerfile の基礎|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
イメージをビルドする
$ docker image build [option] <path>
例
$ docker image build \
--tag my-ubuntu:01 \
.
イメージのレイヤー情報の確認などについての解説ページリンク
2部: Dockerfile の基礎|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
Dockerfileの基礎
解説ページリンク
2部: Dockerfile の基礎|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
その他
Dockerのネットワーク、Volume、バインドやDocker Composeについての解説も非常にわかりやすいものでした。
これらについて書き出すと文量が多くなり、チートシートとしての使い勝手が落ちそうだったので一旦省略。
解説ページリンク
- 3部: ネットワーク|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
- 3部: ポート|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
- 3部: ボリューム|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
- 3部: バインドマウント|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
- 3部: Docker Compose|実践 Docker - ソフトウェアエンジニアの「Docker よくわからない」を終わりにする本 (zenn.dev)
最後に
実践Dockerは非常に素晴らしい本でした。
今までは「Dockerの細かいところは正直あんまりわからない」という状態でしたが、「Docker わかる気がしてきた」に変わりました。
まさに本の目標設定通りです。
まだ読んでいない方は、読んでみてはいかがでしょうか。