Bridge模式

演示:
$ docker run -tid --net=bridge --name docker_bri1 ubuntu-base:v3 docker run -tid --net=bridge --name docker_bri2 ubuntu-base:v3 $ brctl show $ docker exec -ti docker_bri1 /bin/bash $ ifconfig –a $ route –n
快速开发平台如果你之前有 Docker 使用经验,你可能已经习惯了使用 --link 参数来使容器互联。
随着 Docker 网络的完善,强烈建议大家将容器加入自定义的 Docker 网络来连接多个容器,而不是使
用 --link 参数。
这样,busybox1 容器和 busybox2 容器建立了互联关系。
如果你有多个容器之间需要互相连接,推荐使用 Docker Compose 。
Host 模式
如果启动容器的时候使用 host 模式,那么这个容器将不会获得一个独立的 Network Namespace ,而是
和宿主机共用一个 Network Namespace。容器将不会虚拟出自己的网卡,配置自己的 IP 等,而是使
用宿主机的 IP 和端?。但是,容器的其他方面,如文件系统、进程列表等还是和宿主机隔离的。
Host模式如下图所示:

演示:
$ docker run -tid --net=host --name docker_host1 ubuntu-base:v3 $ docker run -tid --net=host --name docker_host2 ubuntu-base:v3 $ docker exec -ti docker_host1 /bin/bash $ docker exec -ti docker_host1 /bin/bash $ ifconfig –a $ route –n
Container 模式

演示:
$ docker run -tid --net=container:docker_bri1 --name dockercon1 ubuntu-base:v3 $ docker exec -ti docker_con1 /bin/bash $ docker exec -ti docker_bri1 /bin/bash $ ifconfig –a $ route -n
None模式
使用 none 模式,Docker 容器拥有自己的 Network Namespace,但是,并不为Docker 容器进行任何
网络配置。也就是说,这个 Docker 容器没有网卡、IP、路由等信息。需要我们自己为 Docker 容器添
加网卡、配置 IP 等。 None模式示意图

演示:
$ docker run -tid --net=none --name docker_non1 ubuntu-base:v3 $ docker exec -ti docker_non1 /bin/bash $ ifconfig –a $ route -n
本站文章除注明转载外,均为本站原创或翻译,欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,共创和谐网络环境。
转载请注明:文章转载自:快速开发框架 » Docker 的网络模式
本文标题: Docker 的网络模式