Windows11 WSL2 Ubuntu 24.04 LTS
Docker サービス確認Ⅱ
ここまでで、Docker の基本コマンドを照会しました。
ここからはさらなる Docker コマンドを見ていきます。
ローカル環境の Docker イメージの一覧を確認します。
hello-world が存在するのが分かります。
yamada@yama:~$ docker images [結果] REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest d2c94e258dcb 20 months ago 13.3kB
「Docker Hub」という、公開されている Docker イメージを管理しているところからダウンロードしたり、 自分で Docker イメージを作成したりすることで初めて一覧に表示されます。
yamada@yama:~$ docker compose version
[結果]
Docker Compose version v2.32.1
のように表示されます。
docker ps コマンドを実行して
Docker デーモンにアクセスできるかを確認します。
正常に動作していれば、現在実行中のコンテナのリストが表示されます。
yamada@yama:~$ docker ps
[結果]
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
実行中のコンテナがないのでリストのみ表示されました。
docker ps -a コマンドを実行して
Docker デーモンにアクセスできるかを確認します。
正常に動作していれば、実行・停止中のコンテナのリストが表示されます。
yamada@yama:~$ docker ps -a
[結果]
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES yasuhiro@ysenba:~$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ee25700f5d hello-world "/hello" 6 hours ago Exited (0) 6 hours ago laughing_ardinghelli
のように停止中のコンテナも含めてリスト表示されます。
作成した Docker コンテナを削除してみます。
例として、hello-world コンテナを削除します。
# docker rm <コンテナ名> (今回でいえば「laughing_ardinghelli」)
または
# docker rm
それではコンテナ名を利用して Docker コンテナを削除します。
なお、コンテナを削除しても、Docker イメージまでは削除されません。
yamada@yama:~$ docker rm 79ee25700f5d
コンテナが削除されたか確認します。
「-a」を忘れずに!
yamada@yama:~$ docker ps -a
[結果]
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
リストだけになりました。
Docker イメージの削除は以下のコマンドで行います。
# docker rmi
または
# docker rmi
それではイメージ名を利用して Docker イメージを削除します。
yamada@yama:~$ docker rmi hello-world
イメージが削除されたか確認します。
yamada@yama:~$ docker images
[結果]
REPOSITORY TAG IMAGE ID CREATED SIZE
リストだけになりました。
デフォルトでは Docker はシステムブート時に自動起動します。
でも停止したいときがありますよね。
そんな時は、
$ sudo systemctl stop docker
sudo を忘れずに!
逆に起動は
$ sudo systemctl start docker
再起動は
$ sudo systemctl restart docker
です。
hello-world 動作説明
デフォルトでインストールされている hello-world がどのように動いているのか説明します。
Docker CE インストール確認の中で
$ sudo docker run hello-world
でインストール確認をしました。
yamada@yama:~$ sudo docker run hello-world [結果] Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world c1ec31eb5944: Pull complete Digest: sha256:5b3cc85e16e3058003c13b7821318369dad01dac3dbb877aac3c28182255c724 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
よく分からない内に動作してしまい、まあいいかで終わってしまいました。
ここでは動作確認をしながら docker の動きを見ていきます。
実行コマンドの「docker run」は、Dockerイメージを使用して、コンテナを起動します。
「hello-world」という Docker イメージを使用して、コンテナを起動させます。
最初はローカル環境には Docker イメージはありません。
Unable to find image 'hello-world:latest' locally
と文句を言っています。
そのため、Docker Hub に探しに行き「hello-world」が存在したので
Docker イメージ[最新版]をダウンロードしました。
latest: Pulling from library/hello-world
hello-world イメージのダウンロードが完了したら、そのイメージを使用してコンテナを起動させています。
この hello-world イメージは、コンテナ起動をしたら、
コンテナの中で 1~4 及びそれ以降のメッセージを出力するような Docker イメージとなっています。
ここまでで Docker CE を WSL/Ubuntu 24.04.1 LTS にインストールすることができ、その動作も確認することができました。
ただ、WARNING[警告]が出ていることに気づきましたので、この件について引き続き説明します。