そろそろ自分の領土についても書いていかないと・・・と思い、ブログに残していきたいと思います。
今回のテーマは「Docker」です。
DockerHubからイメージ取得しコンテナへログインまでの基本コマンドを紹介していきます。
今回は、
- DockerHubからイメージを取得
- コンテナを起動
- コンテナにログイン
- コンテナを停止
- コンテナを削除
- イメージを削除
という手順をnginxを例に紹介していきたいと思います。
今回覚えれるコマンド
DockerHubからイメージを取得する
% docker pull ${REPO}:${TAG}
イメージ一覧
% docker images
イメージからコンテナを立ち上げる
% docker run -d ${REPO}:${TAG}
現在立ち上がっているコンテナを一覧表示
% docker ps
立ち上がっているコンテナの中にログイン
% docker exec -it ${CONTAINER_ID} /bin/bash
コンテナを停止する
% docker stop ${CONTAINER_ID}
停止しているコンテナを削除する
% docker rm ${CONTAINER_ID}
イメージを削除する
% docker rmi ${IMAGE_ID}
実践
DockerHubからイメージを取得する
% docker pull ${REPO}:${TAG}
例:nginxの最新版を取得する場合
% docker pull nginx:latest
---
latest: Pulling from library/nginx
6f28985ad184: Pull complete
29f7ebf60efd: Pull complete
879a7c160ac6: Pull complete
de58cd48a671: Pull complete
be704f37b5f4: Pull complete
158aac73782c: Pull complete
Digest: sha256:d2925188effb4ddca9f14f162d6fba9b5fab232028aa07ae5c1dab764dca8f9f
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
イメージ一覧
% docker images
例:先ほど取得したnginxが確認できる。
% docker images
---
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 6084105296a9 21 hours ago 133MB
イメージからコンテナを立ち上げる
% docker run -d ${REPO}:${TAG}
例:nginxを立ち上げる
% docker run -d nginx:latest
---
a17bd769d76aab975df0b832eec772a9e62157a4b44aa9bff360be599fd45bfe
現在立ち上がっているコンテナを一覧表示
% docker ps
例:先ほど立ち上げたnginxを確認する
% docker ps
---
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a17bd769d76a nginx:latest "/docker-entrypoint.…" 50 seconds ago Up 48 seconds 80/tcp affectionate_montalcini
立ち上がっているコンテナの中にログイン
% docker exec -it ${CONTAINER_ID} /bin/bash
例:nginxのコンテナにログインする
% docker exec -it a17bd769d76a /bin/bash
---
root@a17bd769d76a:/#
(exitでログアウトできる)
コンテナを停止する
% docker stop ${CONTAINER_ID}
例:nginxを停止し、コンテナがなくなっているものを確認
% docker stop a17bd769d76a
---
a17bd769d76a
% docker ps
---
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
停止しているコンテナを削除する
% docker rm ${CONTAINER_ID}
例:nginxのコンテナを削除する
% docker rm a17bd769d76a
---
a17bd769d76a
補足:rm
とstop
の違いは、再起動できるかできないかの違い。stop
は停止後に再び起動することができる。一方、rm
はコンテナ自体を削除してしまうので再び起動することはできない。
イメージを削除する
% docker rmi ${IMAGE_ID}
例:nginxのイメージを削除する
% docker rmi 6084105296a9
---
Untagged: nginx:latest
Untagged: nginx@sha256:d2925188effb4ddca9f14f162d6fba9b5fab232028aa07ae5c1dab764dca8f9f
Deleted: sha256:6084105296a952523c36eea261af38885f41e9d1d0001b4916fa426e45377ffe
Deleted: sha256:3b172069177f8982c1df589c155bfb7482b3f3fb90ef284a34013e0b63e0fe6c
Deleted: sha256:03c12533ac40107c4b01c74df19b35e63948474b7cfbc9829ab26b094f90de31
Deleted: sha256:123667e139767c1fe3bbf4310a80eaca32ab2944b42d0e0863d66dc09215a2e9
Deleted: sha256:96c2aa1177733f403679550776da7e9dcb3b4f0e46e0548467e013017dd8ee23
Deleted: sha256:2df57a38a8fcc8e4e459ade73b0f8d85b19ed4f6b39eb4686eddd5118b99c256
Deleted: sha256:14a1ca976738392ffa2ae4e54934ba28ab9cb756e924ad9297a4795a4adbfdf6
以上
コメント