- docker network ls(ネットワークの一覧表示)
- docker network create(ネットワークの作成)
- docker network connect/docker network disconnect(ネットワークへの接続)
- docker network inspect(ネットワークからの切断)
- docker network rm(ネットワークの削除)
- 参考資料
docker network ls(ネットワークの一覧表示)
$ docker network ls [オプション]
Options | Description |
---|---|
-f,--filter=[] | 出力をフィルタ |
--no-trunc | 詳細を出力する |
-q,--quiet | ネットワークIDのみを表示する |
実行例:ネットワーク一覧表示
docker@LesPaul:~$ docker network ls NETWORK ID NAME DRIVER SCOPE 83e75d03959e bridge bridge local eedc84aef3cb host host local 0b90af3d24df none null local
Value | Description |
---|---|
driver | ドライバーの指定 |
id | ネットワークID |
label | ネットワークに設定されたラベル(label= |
name | ネットワーク名 |
scope | ネットワークのスコープ(swarm/global/local) |
type | ネットワークのタイプ(ユーザー定義ネットワークcustom/定義済みネットワークbuiltin) |
実行例:ネットワーク一覧表示のフィルタリング
docker@LesPaul:~$ docker network ls -q --filter driver=bridge 83e75d03959e
例:コンテナ起動
$ docker container run -itd --name=sample ubuntu:latest
実行例:コンテナのネットワーク確認
docker@LesPaul:~$ docker container inspect sample [ { "Id": "7e287f339630b1d539c87ff0fa0b09f819233ecfc40ceda8982da56ff11d5f8b", "Created": "2018-10-21T10:25:55.647551283Z", "Path": "/bin/bash", "Args": [], "State": { "Status": "running", "Running": true, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 3771, "ExitCode": 0, "Error": "", "StartedAt": "2018-10-21T10:25:56.470254119Z", "FinishedAt": "0001-01-01T00:00:00Z" }, ~中略~ "NetworkSettings": { "Bridge": "", "SandboxID": "1afccd40c844c30cce3fc1a547192e887b5afb972ff0adcf46dc37c53172e72d", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": {}, "SandboxKey": "/var/run/docker/netns/1afccd40c844", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "18c0a11929a10800b7333051229f51ea967f11b78a1ddbf22ac712838f890f53", "Gateway": "172.17.0.1", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "172.17.0.2", "IPPrefixLen": 16, "IPv6Gateway": "", "MacAddress": "02:42:ac:11:00:02", "Networks": { "bridge": { "IPAMConfig": null, "Links": null, "Aliases": null, "NetworkID": "83e75d03959e196ca29727191206adc4feadc167935b8cf61bb8729571cad229", "EndpointID": "18c0a11929a10800b7333051229f51ea967f11b78a1ddbf22ac712838f890f53", "Gateway": "172.17.0.1", "IPAddress": "172.17.0.2", "IPPrefixLen": 16, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "02:42:ac:11:00:02", "DriverOpts": null } } } } ]
docker network create(ネットワークの作成)
$ docker network create [オプション] ネットワーク
Options | Description |
---|---|
--driver,-d | ネットワークブリッジまたはオーバレイ(デフォルトはbridge) |
--ip-range | コンテナに割り当てるIPアドレスのレンジを指定 |
--subnet | サブネットをCIDR形式で指定 |
--ipv6 | IPv6ネットワークを有効にするかどうか(true/false) |
-label | ネットワークに設定するラベル |
実行例:ブリッジネットワークの作成と確認
docker@LesPaul:~$ docker network create --driver=bridge web-network 0e7abd3f4d7baaa4e433e56f0d6e953daf3f1af24f570231ad720cbfbc95bf6d docker@LesPaul:~$ docker network ls --filter driver=bridge NETWORK ID NAME DRIVER SCOPE 83e75d03959e bridge bridge local 0e7abd3f4d7b web-network bridge local
docker network connect/docker network disconnect(ネットワークへの接続)
$ docker network connect [オプション] ネットワーク コンテナ
Options | Description |
---|---|
--ip | IPv4アドレス |
--ip6 | IPv6アドレス |
--alias | エイリアス名 |
--link | 他のコンテナへのリンク |
例:ネットワークへの接続
$ docker network connect web-network webfront
実行例:コンテナのネットワーク確認
docker@LesPaul:~$ docker network connect web-network webfront docker@LesPaul:~$ docker container inspect webfront [ ~中略~ "web-network": { "IPAMConfig": {}, "Links": null, "Aliases": [ "dd72a792e0a7" ], "NetworkID": "0e7abd3f4d7baaa4e433e56f0d6e953daf3f1af24f570231ad720cbfbc95bf6d", "EndpointID": "428989f5047ff7422ac6fb567bf464653f6ca8cdc36778de711a28ac37bce529", "Gateway": "172.18.0.1", "IPAddress": "172.18.0.2", "IPPrefixLen": 16, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "02:42:ac:12:00:02", "DriverOpts": null } } } } ]
例:ネットワークを指定したコンテナの起動
$ docker container run -itd --name=webap --net=web-network nginx
例:ネットワークからの切断
$ docker network disconnect web-network webfront
docker network inspect(ネットワークからの切断)
$ docker network inspect [オプション] ネットワーク
実行例:ネットワークの詳細表示
docker@LesPaul:~$ docker network inspect web-network [ { "Name": "web-network", "Id": "0e7abd3f4d7baaa4e433e56f0d6e953daf3f1af24f570231ad720cbfbc95bf6d", "Created": "2018-10-21T19:40:09.658609258+09:00", "Scope": "local", "Driver": "bridge", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": {}, "Config": [ { "Subnet": "172.18.0.0/16", "Gateway": "172.18.0.1" } ] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": { "ac5135fb6709f00b32cf040eb2148d0a084d26c8587fcd5092e0fc0cd595e8d2": { "Name": "webap", "EndpointID": "3bd1604e500b14d0b0b9685e9e411e5afda921bf3289eaf6260f2e3a935ad1dd", "MacAddress": "02:42:ac:12:00:03", "IPv4Address": "172.18.0.3/16", "IPv6Address": "" } }, "Options": {}, "Labels": {} } ]
docker network rm(ネットワークの削除)
$ docker network rm [オプション] ネットワーク
実行例:ネットワークの削除(※事前に接続中の全コンテナとの接続をdisconnectしておく必要有り)
$ docker network rm web-network
参考資料
https://docs.docker.com/engine/reference/commandline/network_ls/
https://docs.docker.com/engine/reference/commandline/network_create/
https://docs.docker.com/engine/reference/commandline/network_connect/
https://docs.docker.com/engine/reference/commandline/network_disconnect/
https://docs.docker.com/engine/reference/commandline/network_inspect/
https://docs.docker.com/engine/reference/commandline/network_rm/