ゲラシアの草原におけるDockerマスター

DockerBeginner
オンラインで実践に進む

はじめに

あなたは古代ゲラシアの草原にいます。そこでは野生の馬が自由に駆け回り、馬使いと野生の獣との絆が生存のために不可欠です。あなたは野生の馬使いとして、この広大な大地でDockerを駆使し、コンテナを効率的に管理するという課題に挑みます。

コンテナ作成の習得

このステップでは、野生の草原で生き残るために、Dockerコンテナの作成と管理の基本を学びます。

タスク

  • mynginx という名前のNginxコンテナを作成し、正常に実行されていることを確認してください。
  • Alpineコンテナを起動し、そのステータスを確認してください。
  • 特定のボリュームをマウントしたUbuntuコンテナをデプロイしてください(ホストの ~/project をコンテナの /app にマウントします)。

要件

  • すべての操作は /home/labex/project ディレクトリ内で行う必要があります。
  • 以下のコマンドを使用してください:
    • コンテナ作成: docker run
    • コンテナステータスの確認: docker ps
    • ボリュームのマウント: docker run -v

タスク完了後、docker ps の出力には、コンテナID、イメージ、ステータスなどの関連情報を含む実行中のコンテナが表示されるはずです。

labex:~/ $ docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS     NAMES
1983f85f03d4   ubuntu    "sleep 3600"             22 seconds ago   Up 21 seconds             ubuntu_container
4231996cae33   alpine    "sleep 3600"             2 minutes ago    Up 2 minutes              alpine_container
519eadd3ced5   nginx     "/docker-entrypoint.…"   2 minutes ago    Up 2 minutes    80/tcp    mynginx

コンテナネットワークと通信

このステップでは、草原全体でシームレスな接続を確立するために、コンテナネットワークと通信の世界を深く掘り下げます。

タスク

  • コンテナ用に mynetwork という名前のカスタムネットワークを作成してください。
  • myalpine という名前のAlpineコンテナをカスタムネットワーク上にデプロイし、同じネットワーク内のPythonイメージに基づく mypython という名前のコンテナと通信できることを確認してください。

要件

  • すべての操作は /home/labex/project ディレクトリ内で行う必要があります。
  • 以下のコマンドを使用してください:
    • カスタムネットワークの作成: docker network create
    • コンテナのネットワーク接続: docker network connect

タスク完了後、docker network ls を実行するとカスタムネットワークが表示され、Pythonコンテナがネットワーク内の他のコンテナと正常に通信できるはずです。

ネットワークの確認:

labex:~/ $ docker network ls
NETWORK ID     NAME        DRIVER    SCOPE
1a367e6cc4e5   bridge      bridge    local
91199fc6ad2e   host        host      local
32e2857073a9   minikube    bridge    local
92d3b71b7efd   mynetwork   bridge    local
1078d2c781b6   none        null      local

ping によるコンテナ接続の確認:

labex:~/ $ docker exec myalpine ping mypython
PING mypython (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.153 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.072 ms
64 bytes from 172.18.0.3: seq=2 ttl=64 time=0.069 ms

まとめ

このチャレンジでは、古代の草原で野生の馬使いの役割を担い、Dockerコンテナ管理の技術を習得しました。タスクを完了し、ソリューションを理解することで、Dockerの過酷な世界で生き残るために不可欠な、Dockerコンテナ管理とネットワーク構築の重要なスキルを身につけることができました。

✨ 解答を確認して練習✨ 解答を確認して練習