【发布时间】:2020-09-01 11:17:47
【问题描述】:
我有 2 个 AWS 虚拟机实例,在 2 个 IPv4 公共 IP A.B.C.D 和 X.Y.Z.W 上运行 我在两台机器上都安装了 Docker,并启动了 Docker Swarm,节点 A.B.C.D 作为管理器,X.Y.Z.W 作为工作器。当我启动 Docker Swarm 时,我使用 A.B.C.D 作为广告地址,如下所示:
docker swarm init --advertise-addr A.B.C.D
Swarm 初始化成功
当我从图片jwilder/whoami创建服务并将服务暴露在8000端口时出现问题:
docker service create -d -p 8000:8000 jwilder/whoami
根据 Swarm Routing Mesh 文档,我希望我可以从两个节点访问端口 8000 上的服务。但是,实际上我只能从一个节点访问服务,也就是容器运行所在的节点
我也在 Azure 虚拟机上尝试过这个实验,但 alo 失败了,所以我猜这是 Swarm 在这些云提供商上的问题,可能是网络配置错误。
有谁知道如何解决这个问题?在此先感谢:D
【问题讨论】:
标签: amazon-web-services docker amazon-ec2 docker-swarm