我发现Docker Swarm,并且正在努力在覆盖网络中部署服务(并使之正常工作)。
我正在将docker stack deploy -c config.yml studio
与该简单撰写文件
version: "3.4"
services:
redis:
image: redis
db:
image: postgres
networks:
default:
attachable: true
driver: overlay
internal: false
这些服务已经很好地部署在我的2个节点上(每个节点上有1个服务),但是奇怪的事情现在开始了。
我在管理器上运行watch -n 1 docker network inspect studio_default
以获取我的网络的实时状态,我注意到在Peers
字段中,工作程序节点随机出现和消失,因此部署在该节点上的服务是< em>“随机可用/可访问” 。
为什么节点将自己与网络断开连接(并重新连接)?
当节点出现在Peers
中时,我可以从管理器容器ping到工作者,但是我想我什至不能从工作者ping到经理...
我迷路了
答案 0 :(得分:0)
您应确保在节点之间打开端口2377 / tcp,7946 / tcp,7946 / udp和4789 / udp。参见Open protocols and ports between the hosts。