首页 > 解决方案 > 在 VM 工作站 15 播放器中运行的 Docker Swarm 不接受工作人员连接

问题描述

我在带有 NAT 的 VM Workstation 15 播放器中运行 docker swarm 管理器(VM:Ubuntu 19.10,主机:Windows 10)。我docker swarm init --advertise-addr 223.181.240.48:2377在我的经理 vm 上运行。现在我复制到令牌并在我的另一个虚拟机上使用它,该虚拟机在另一个节点和另一个带有 NAT 的网络上运行。它返回以下错误:

来自守护程序的错误响应:在节点加入之前已达到超时。加入 swarm 的尝试将在后台继续进行。使用“docker info”命令查看节点当前的 swarm 状态。

然后我尝试用谷歌搜索错误并知道问题可能是由于防火墙引起的,我可能必须取消阻止端口。另外,由于我使用的是 NAT,我必须使用自动桥接或端口转发。首先,我试过使用新娘(在 vm 设置中,我将网络更改为桥接),但是当我尝试“我的 ip”时,主机和 vm(223.181.240.48)的结果相同。所以,我尝试使用 NAT 进行端口转发,我去了到 C:/ProgramData/VMware/vmnetnat.conf 并添加以下行

[incomingtcp]
2377:192.168.172.2:2377

192.168.172.2 是我的虚拟机的网络网关地址。然后我再次运行 docker swarm 命令,复制到我的另一个虚拟机。现在,我收到以下错误:

来自守护进程的错误响应:rpc 错误:代码 = Unavailable desc = 所有 SubConns 都处于 TransientFailure,最新连接错误:连接错误:desc =“传输:拨号时出错 dial tcp 233.181.240.48:2377:连接:连接被拒绝”

然后我尝试了 sudo ufw allow 2377/tcp 来解锁 vm 中的端口。然后再次重试整个过程。现在我再次收到超时错误。我在中间错过了什么吗?还是做错了什么?我通过“我的 ip”谷歌搜索收到的 ip 和我在有线连接设置(dhcp on)中收到的 ipv4 有什么区别。

标签: dockervirtual-machinedocker-swarmvmware-playerubuntu-19.04

解决方案


推荐阅读