本文共 664 字,大约阅读时间需要 2 分钟。
1.docker集群间容器是否可以通信。
创建容器服务来测试:docker service create --name tomcat1 --replicas 2 192.168.56.200:5000/tomcat
测试结果ping不通。2.docker 在早前的时候没有考虑跨主机的容器通信,这个特性直到 docker 1.9 才出现。在此之前,如果希望位于不同主机的容器能够通信,一般有几种方法:
使用端口映射:直接把容器的服务端口映射到主机上,主机直接通过映射出来的端口通信把容器放到主机所在的网段:修改 docker 的 ip 分配网段和主机一致,还要修改主机的网络结构第三方项目:flannel,weave 或者 pipework 等,这些方案一般都是通过 SDN 搭建 overlay 网络达到容器通信的解决方案:创建overlay网络
docker network create -d overlay netdocker network ls再创建容器进行测试docker service create --name tomcat2 --mode global --network net 192.168.56.200:5000/tomcat![] 创建镜像信息:docker inspect cf2bb17e353e有了overlay网络可以ping通了。两个容器可以通信是因为加了一个overlay层。
转载于:https://blog.51cto.com/14033037/2310913