启动docker swarm:
docker swarm init --advertise-addr MANAGER-IP

加入docker swarm:
docker swarm join --token MANAGER-IP:2377

我正在使用Windows 10,
在Windows容器模式下可以正常工作,但是在Linux容器模式下会出现以下错误。

错误:

来自守护程序的错误响应:远程CA与指纹不匹配。预期:91030413f17ec7c023a2a796ee05a024915080ca8dfd646a597c7e966f667df6

Docker swarm manager命令:docker node ls

ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS
2zf1l2o7sl2a1qka55s2vi77x *   moby                Ready               Active              Leader


在Windows容器模式下运行时,主机名是moby正确托管。

#1 楼

如果正确配置并加入,则应该会看到两台主机:一台用于Linux,一台用于Windows。

Windows主机不能在Linux主机内部本地运行,反之亦然。这意味着您必须在同一集群中为Linux主机和Windows主机使用不同的内核。这样,他们可以在同一Docker网络上进行通信。

有关更多信息,请参考Windows上的Docker Engine。

#2 楼

您的令牌错误。

您可以在管理器节点中获取工作人员令牌:

docker swarm join-token -q worker


它对我有用。

https://docs.docker.com/engine/reference/commandline/swarm_join/