这篇文章中,我们使用Docker Swarm设置允许主机之间的容器互相访问的网络。实际上,Swarm集群允许我们使用本地Docker单一的主机网络,也允许我们创建依赖VXLAN的overlay network。在overlay中启动的容器可以和容器之外的应用互相通信。这篇文章介绍了使用Docker Swarm如何创建、使用、测试一个overlay network。
创建Overlay Network
设置Swarm之后,你就可以依你习惯的方式立即开始管理你的容器了。Docker将会自动使用一个所谓“bridge”的网络模式管理,尽管这是很好的,而且你也可以把你的服务暴露在你的主机上。当你不得不把服务绑定在主机上而启动多个主机的容器,而且要让这些容器知道怎么发现彼此两者之间的网络通信时,这是非常复杂的。
Libnetwork提供可以用于你容器的overlay network,以至于他们可以出现在相同的子网上。他们可以互相通信而且相互获取DNS名称,使之在网络上很容易被发现。
Swarm主机或者工作节点作为你的工作的DockerMachine,你可以使用 docker network create命令创建一个overlay network,如下面操作: