一、docker的原生网络
bridge
host
host网络模式需要在容器创建时指定 --network=host
docker run -it --name vml --network host nginx
host模式可以让容器共享宿主机网络栈,这样的好处是外部主机与容器直接通信,但是容器的网络缺少隔离性。
none
none模式是指禁用网络功能,只有lo接口,在容器创建时使用
–network=none指定。
二、Docker自定义网络
创建自定义网桥
docker network create -d bridge my_net1
创建自定义网段
在创建时指定参数:–subnet 、–gateway
docker network create --subnet 172.22.0.0/24 --gateway 172.22.0.1 my_net2
docker run -it --name rh4 --network my_net2 --ip 172.22.0.10 rhel7:v5
然后发现就能ping通网段
接到不同网桥的网段是不能相互通信
三、Docker容器通信
docker run -d --name vm1 --network my_net1 nginx
docker run -it -name vm2 --network my_net1 ubuntu
然后开始ping vm1
就能ping通