# 在宿主机上 $ docker network ls NETWORK ID NAME DRIVER SCOPE 2133c9ab0010 bridge bridge local d3385e8df5e5 host host local c788000c6843 none null local b165ac73c636 redis-net bridge local
$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:a7:d7:84 brd ff:ff:ff:ff:ff:ff altname enx080027a7d784 inet 192.168.1.8/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3 valid_lft 71660sec preferred_lft 71660sec inet6 2409:8a00:2453:0:a00:27ff:fea7:d784/64 scope global dynamic noprefixroute valid_lft 259134sec preferred_lft 172734sec inet6 fe80::a00:27ff:fea7:d784/64 scope link noprefixroute valid_lft forever preferred_lft forever 3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 0a:f9:28:09:5d:e6 brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0 valid_lft forever preferred_lft forever inet6 fe80::8f9:28ff:fe09:5de6/64 scope link proto kernel_ll 53: vethcc5b914@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-b165ac73c636 state UP group default link/ether ba:f1:43:90:21:38 brd ff:ff:ff:ff:ff:ff link-netnsid 10 inet6 fe80::b8f1:43ff:fe90:2138/64 scope link proto kernel_ll valid_lft forever preferred_lft forever 65: veth20984f7@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-b165ac73c636 state UP group default link/ether b6:05:32:3e:e3:c1 brd ff:ff:ff:ff:ff:ff link-netnsid 11 inet6 fe80::b405:32ff:fe3e:e3c1/64 scope link proto kernel_ll valid_lft forever preferred_lft forever # 在某台容器内 [root@280f37bb7527 app]$$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 3: eth1@if65: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 16:b7:7a:96:2f:54 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 172.18.0.10/16 brd 172.18.255.255 scope global eth1 valid_lft forever preferred_lft forever
自定义网络和生产最佳实践
自定义网络默认使用的是桥接网络模式bridge。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
# 创建自定义网络 redis-net $ docker network create redis-net $ docker network ls NETWORK ID NAME DRIVER SCOPE 2133c9ab0010 bridge bridge local d3385e8df5e5 host host local c788000c6843 none null local b165ac73c636 redis-net bridge local
$ docker network --help Usage: docker network COMMAND Commands: connect Connect a container to a network create Create a network disconnect Disconnect a container from a network inspect Display detailed information on one or more networks ls List networks prune Remove all unused networks rm Remove one or more networks