このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
【Docker入門】独自のネットワークの作成

Dockerには、独自のネットワークを作成してコンテナをそれに関連付ける機能があります。これにより、コンテナ間の通信やネットワーク構成を柔軟に管理することができます。以下では、独自のネットワークを作成する手順と、それぞれのドライバについて説明します。
1.独自のネットワークの作成手順
ネットワークの作成
・「docker network create
」コマンドを使用して、新しいネットワークを作成します。
このコマンドは、my_network
という名前の新しいネットワークを作成します。
PS C:\Users\joeac> docker network create my_network
afb3de2ccd360e5c2fb159532a55cb740bd69e921f0ede805ab51bed4dfba136
ネットワークの確認
「docker network ls
」コマンドを使用して、作成したネットワークがリストされていることを確認します。
・「docker network ls
」コマンドを実行します。
PS C:\Users\joeac> docker network ls
NETWORK ID NAME DRIVER SCOPE
4765a8039b02 bridge bridge local
9cb62d828092 host host local
afb3de2ccd36 my_network bridge local
1bafb53e8f6c none null local
2.ドライバの選択
Dockerのネットワークは、3つの主要なドライバ(none、host、bridge)のいずれかをベースとして作成されます。
ドライバを指定しない場合は、デフォルトで「bridge」が選択されます。
none | ネットワークを使用しない設定で、コンテナは自分自身だけで動作します。 |
host | ホストのネットワークと同じネームスペースを共有します。コンテナはホストと同じネットワークインターフェースを使用します。 |
bridge | Dockerデフォルトのネットワークドライバで、コンテナ間の通信をブリッジします。このドライバは、Dockerがインストールされると自動的にデフォルトで提供されます。 |
3.コンテナを関連付けて利用
作成したネットワークを使用するには、「docker run
」コマンドの「--network
」オプションを使用してコンテナを関連付けます。
docker run -d --name my_container --network=my_network busybox
BusyBoxについては以下のコンテンツを参考にしてください。
以下は、「docker run -d --name my_container --network=my_network busybox
」コマンドの意味を表でまとめたものです。
オプション | 説明 |
---|---|
docker run | Dockerコンテナを実行するためのコマンド |
-d | デタッチモードでコンテナをバックグラウンドで実行する |
--name my_container | コンテナにmy_container という名前を割り当てる |
--network=my_network | コンテナをmy_network という名前のネットワークに関連付ける |
busybox | コンテナを起動する際に使用するDockerイメージの名前 |
このコマンドは、「busybox
」イメージを使用して「my_container
」という名前のコンテナを実行します。「-d」
オプションは、コンテナをデタッチモードで起動し、バックグラウンドで実行します。
「--name
」オプションは、コンテナに名前を割り当てます。「--network
」オプションは、コンテナを指定した名前のネットワークに関連付けます。これにより、「my_container
」は他の同じネットワークに関連付けられたコンテナと通信できます。

・「docker run -d --name my_container --network=my_network busybox
」コマンドを実行します。
PS C:\Users\joeac> docker run -d --name my_container --network=my_network busybox
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
7b2699543f22: Pull complete
Digest: sha256:650fd573e056b679a5110a70aabeb01e26b76e545ec4b9c70a9523f2dfaf18c6
Status: Downloaded newer image for busybox:latest
6f30ea9968c3d34c67ba5ff3cfb6aef9f679df27025825ba216feee60d99e898
4.ネットワークの削除
ネットワークを削除するには、「docker network rm
」コマンドを使用します。
・「docker network rm my_network
」コマンドを実行します。
PS C:\Users\joeac> docker network rm my_network
my_network
まとめ
以上が、独自のネットワークを作成し、コンテナをそれに関連付けて利用する手順です。これにより、Docker環境でネットワークを柔軟に構成し、コンテナ間の通信を制御することができます。