こんにちは。
Docker のエラーを放置したまま3ヶ月以上過ごしてしまった者です。
さきほど、やっと Docker Desktop と macOS を最新版にアップデートすることができたので、今回はその環境を使って基本的な docker コマンドを復習したいと思います。
環境
- MacBook Air (Intel Core i5)
- macOS Sequoia 15.4
- Docker Desktop 4.40.0
準備
Docker Desktop は起動しているものとします。
Docker イメージの取得
docker pull
で Docker Hub から nginx の Docker イメージを取得します。
% docker pull nginx:latest
取得済みのイメージは docker images
で確認できます。
% docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 4e1b6bae1e48 9 days ago 192MB
コンテナの作成と実行
docker run
でコンテナを作成して実行します。
% docker run --name my-nginx -d -p 8080:80 nginx:latest
コンテナの状態確認
docker ps
でコンテナの状態を確認します。
% docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f63d1ca2ff9e nginx:latest "/docker-entrypoint.…" 7 seconds ago Up 6 seconds 0.0.0.0:8080->80/tcp my-nginx
nginx の動作確認
ブラウザで http://localhost:8080 へアクセスします。
ポート番号は docker run
で指定した8080番です。
Welcome to nginx! で歓迎されたら成功です。
コンテナの停止
docker stop
でコンテナを停止します。
% docker stop my-nginx
% docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
-a
オプションを付けると、停止したコンテナを確認できます。
% docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f63d1ca2ff9e nginx:latest "/docker-entrypoint.…" 2 minutes ago Exited (0) 43 seconds ago my-nginx
コンテナの再実行
停止したコンテナは再度実行できます。
% docker start my-nginx
% docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f63d1ca2ff9e nginx:latest "/docker-entrypoint.…" 3 minutes ago Up 4 seconds 0.0.0.0:8080->80/tcp my-nginx
起動を確認できたら、再度停止しておきます。
% docker stop my-nginx
% docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
コンテナの削除
docker rm
でコンテナを削除します。
% docker rm my-nginx
% docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Docker イメージの削除
docker rmi
で Docker イメージを削除します。
% docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 4e1b6bae1e48 9 days ago 192MB
% docker rmi nginx:latest
% docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
まとめ
Docker イメージの取得からコンテナの実行と停止、イメージ削除までの一連の作業を確認できました。慣れるまでは多少わかりにくいので、コンテナのライフサイクルをご自分で絵に描いてみると理解が深まると思います。