【问题标题】:Can't add workers to Docker Swarm无法将工作人员添加到 Docker Swarm
【发布时间】:2020-03-05 21:34:55
【问题描述】:

所以我在 VirtualBox 上运行虚拟机来尝试让 Docker 在分布式模式下工作。根据本教程 (https://docs.docker.com/get-started/part4/#configure-a-docker-machine-shell-to-the-swarm-manager),我将名为“myvm1”的 VM 设置为使用 ssh myvm1 "docker swarm init --advertise-addr 10.0.2.15" 的集群管理器, 但是,当我尝试将工人添加到该群时,我收到一个错误:

Error response from daemon: rpc error: code = Unavailable desc = 
all SubConns are in TransientFailure, latest connection error: 
connection error: desc = "transport: Error while dialing dial tcp 
10.0.2.15:2377: connect: connection refused"
exit status 1

其中 10.0.2.15 是我通过运行VBoxManage guestproperty get myvm1 "/VirtualBox/GuestInfo/Net/0/V4/IP" 获得的管理器 VM 的 IP

有人知道是什么原因吗?我的IP错了吗?我需要打开端口吗?

仅供参考:添加尝试添加工人,我累了:

docker-machine ssh myvm2 "docker swarm join --token [token returned by swarm init on myvm1] 10.0.2.15:2377"

不知道我还能做什么。

【问题讨论】:

  • 没关系:使用 eth1 地址而不是 eth0 地址后它可以工作

标签: macos docker virtualbox docker-swarm


【解决方案1】:

这可能是因为您正在运行 Virtual Box。这意味着您的某些接口与其他 VM 和主机共享。

如果您在您的虚拟机和主机上运行 ifconfig,请为每台机器虚拟机选择显示不同 IP 的接口。

我也遇到了这个问题,发现每台机器上的 eth0 IP 都是相同的。当然,这是行不通的。

eth1 对每台机器也有不同的 IP。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 2017-09-08
    • 2012-08-21
    相关资源
    最近更新 更多