OStack程序员社区-中国程序员成长平台

标题: docker - Docker-swarm >>无法连接到Docker引擎端点 [打印本页]

作者: 菜鸟教程小白    时间: 2022-8-3 10:13
标题: docker - Docker-swarm >>无法连接到Docker引擎端点

docker version 1.9.1
swarm version 1.0.1

为什么将3个VM(桥接网络)连接到群集。 “ docker 信息”显示了所有节点

Status pending.



3台主机中的1台是管理器,所有输出均来自此主机。我不知道在哪里找。

在运行swarm --debug manage token://XXXXX

输出>>
*INFO[0000] Listening for HTTP addr=127.0.0.1:2375 proto=tcp

DEBU[0000] Failed to validate pending node: Cannot connect to the docker engine endpoint  Addr=10.32.1.38:2375

DEBU[0000] Failed to validate pending node: Cannot connect to the docker engine endpoint  Addr=10.32.1.4:2375

DEBU[0000] Failed to validate pending node: Cannot connect to the docker engine endpoint  Addr=10.32.1.33:2375

然后
root@ubuntu:~# ps -ef | grep swarm

root 2158  1391  0 12:28 pts/2 00:00:00 swarm join token://xxxxxxx --addr 10.32.1.4:2375

root 2407  1213  0 13:57 pts/1 00:00:00 swarm manage token://xxxxxxx -H 0.0.0.0:4243

root 2413  1391  0 13:57 pts/2    00:00:00 grep --color=auto swarm

然后
root@ubuntu:~# swarm list token://xxxxxxxxxxx

10.32.1.4:2375
10.32.1.33:2375
10.32.1.38:2375

然后
root@ubuntu:~# ps -ef | grep docker

root      2330     1  0 12:52 ?        00:00:00 /usr/bin/docker daemon

root      2421  1391  0 14:10 pts/2    00:00:00 grep --color=auto docker

心跳排序-在后台运行,检查端口,名称解析,可从管理器ping通。



Best Answer-推荐答案


docker 守护程序可以监听三种不同类型的套接字: unix tcp fd

默认情况下, docker 守护程序仅在unix套接字上监听。

如果需要远程访问Docker守护程序,则需要启用tcp套接字。

创建docker swarm集群时,swarm管理器需要远程访问swarm代理节点的docker守护程序。

因此,您需要重新配置 docker守护程序

vim /etc/default/docker

添加以下行:
DOCKER_OPTS="-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"

重新启动 docker 守护程序
sudo restart docker

这样,可以远程访问 docker 守护程序

引用:
  • Docker document: docker daemon
  • Docker document: create a swarm for development
  • 关于docker - Docker-swarm >>无法连接到Docker引擎端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34810779/






    欢迎光临 OStack程序员社区-中国程序员成长平台 (http://ostack.cn/) Powered by Discuz! X3.4