2024年7月にリライトしました。
[Docker Desktop for Mac] docker コマンド 基本のキ(nginx のコンテナを実行してみる)
こんにちは。
Docker の軽快な動作に驚いている者です。
前回は boot2docker のインストールまで試しました。
今回は nginx のコンテナを作成しながら、基本的な docker コマンドを学びたいと思います。
環境
- Mac OS X Yosemite
- VirtualBox 4.3.28
- boot2docker 1.7.0
準備
boot2docker up
で Linux 仮想マシンは起動しているものとします。
Docker イメージの取得
Docker Hub から最新の Docker イメージを取得します。
$ docker pull nginx:latest
取得済みのイメージは docker images
で確認できます。
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
nginx latest 319d2015d149 2 weeks ago 132.8 MB
コンテナの作成と実行
docker run
でコンテナを作成して実行します。
$ docker run --name my-nginx -d -p 8080:80 nginx:latest
コンテナの状態確認
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ea496b1839ff nginx:latest "nginx -g 'daemon of 3 minutes ago Up 3 minutes 443/tcp, 0.0.0.0:8080->80/tcp my-nginx
nginx の動作確認
仮想マシンのIPアドレスを確認後、ブラウザで nginx へアクセスします。
ポート番号は docker run
で指定した8080番です。
$ boot2docker ip
192.168.59.103
http://192.168.59.103:8080/
コンテナの停止
$ 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
6337c95a1542 nginx:latest "nginx -g 'daemon of 2 minutes ago Exited (0) About a minute ago my-nginx
コンテナの再実行
終了したコンテナを再度実行します。
$ docker start my-nginx
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6337c95a1542 nginx:latest "nginx -g 'daemon of 5 minutes ago Up 18 seconds 443/tcp, 0.0.0.0:8080->80/tcp my-nginx
コンテナの削除
終了したコンテナを削除します。
$ docker rm my-nginx
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Docker イメージの削除
不要な Docker イメージを削除します。
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
nginx latest 319d2015d149 2 weeks ago 132.8 MB
$ docker rmi nginx:latest
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
まとめ
Docker イメージの取得からコンテナの実行と停止、イメージ削除までの一連の作業を確認できました。
慣れるまでは多少わかりにくいので、コンテナのライフサイクルをご自分で絵に描いてみると理解が深まると思います。