使用Docker 多节点网络来创建虚拟网络,把容器接入虚拟网络,能实现应用中所需要的网络拓扑。具体来说,Bridge网络能用来创建单节点网络,Overlay网络能创建多节点网络。通过这样给应用定制专用网络,能为容器提供绝对的隔离性。
Docker Compose的目标是实现单节点网络,通过用--x-networking
来创建一个应用程序独有的桥接网络,如果应用程序需要多节点部署,可以使用Docker Swarm集群来创建一个overlay网络。
那如果一个桥接网络或overlay网络已经存在,而你想要把这个网络分配给运行中的容器呢?
Docker 1.9 引入了变量替换的特性,我们可以利用这特性实现把容器关联到一个预创建的网络上。
创建Docker桥接网络
创建网络:
sh docker network create -d bridge mynet 47d6225ffe56ddd1a8bc0d6abb0ffd8f8ac3eec2090ff243f8cd6f77c170751b=
列出网络:
sh docker network ls NETWORK ID NAME DRIVER feb6e9567439 bridge bridge 29563a59abe8 none null 25ab737cd665 host host 47d6225ffe56 mynet bridge
Docker会为每个节点自动创建三个网络:
网络名称 | 作用 |
---|---|
bridge | 容器默认连接的网络 |