1、默认网络
docker network ls
NETWORK ID NAME DRIVER SCOPE
5040bd77d0b1 bridge bridge local
42b4fb7b9ee4 host host local
31219b2fcd01 none null local
bridge
host
none
container
1、检查网络映射关系
docker run -it --name bbox01 busybox
/
62: eth0@if63:
[root@
63: veth817661e@if62:
2、host模式
docker run -it --name nnox02 --network host busybox
/
3、none网络模式
#none网络模式是直接禁用网络模式,使用lo解开local的间歇,代表127.0.0.1,本地环回借口
docker run -it --name bbox03 --net none busybox
/ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue 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
4、container网络模式
#container网络模式是docekr中的一中特殊网络模式,
#在创建容器是通过参数 --net container:一运行的容器名称|ID 或者--network container:一运行的容器名称|ID
#出于这个模式的docker容器会共享一个网络站,这样两个容器之间可以使用localhost高效快速通信
#contaniner模式不会创建自己的网卡和ip,两个容器除了网络之外,其他的文件系统,进程列表等还是隔离的
#指定网络模式为共享bbox01的网络模式
docker run -it --name bbox04 --net container:bbox01 busybox
/ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue 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
62: eth0@if63: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue
link/ether 02:42:ac:11:00:04 brd ff:ff:ff:ff:ff:ff
#对比
docker exec -it bbox01 sh
/ # ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue 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
62: eth0@if63: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue
link/ether 02:42:ac:11:00:04 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.4/16 brd 172.17.255.255 scope global eth0
2、自定网络
1、创建自定义bridge网络
docker network create custom_network
e80f79d54fe2744071e4e94bb9b3f98a550d6a0e5c46f7977f8fb335e480eecb
docker network create --subnet 172.21.0.0/24 --gateway 172.21.0.1 custom_network02
ddc97b6e75d40c5ea4f667ea8adaf311e0d15535035d9328b0d6048008f1e7bd
docker network inspect custom_network02
"Subnet": "172.21.0.0/24",
"Gateway": "172.21.0.1"
docker network ls
NETWORK ID NAME DRIVER SCOPE
5040bd77d0b1 bridge bridge local
e80f79d54fe2 custom_network bridge local
42b4fb7b9ee4 host host local
31219b2fcd01 none null local
2、使用自定义网络添加容器
docker run -it --name bbox05 --net custom_network busybox
docker run -it --name bbox06 --net custom_network busybox
docker exec -it bbox05 sh
ping bbox06
/