Docker群pipe理器无法识别群集节点
我按照这些步骤来创buildDocker群集。
-
创buildCunsol
$ docker-machine create -d virtualbox mh -keystore
$ eval“$(docker-machine env mh-keystore)”
$ docker run -d \
-p“8500:8500”\
-h“领事”\
progrium / consul -server -bootstrap -
创buildswarm manager
$ docker-machine create -d virtualbox node1
$ docker run -d -p 4000:4000 swarm manage -H:4000 –replication – advertise $(docker-machine ip node1):4000 consul:// $(docker-machine ip mh -keystore):8500 -
创build群集节点
$ docker-machine create -d virtualbox node2
$ docker run -d swarm join –advertise = $(docker-machine ip node2):2375 consul:// $(docker-machine ip mh-keystore):8500 -
login节点1
$ docker-machine ssh node1
$ docker -H:4000信息
但是这个指令输出
(未知):192.168.99.106:2375(node2 ip)
└ID:
└状态:待定
└容器:0
└保留的CPU:0/0
└保留内存:0 B / 0 B
└标签:
└错误:无法连接到Docker守护进程。 docker守护程序是否在这个主机上运行?….
我怎样才能解决这个问题 ?
我已经检查node2,它运行良好。
[更新]我按照这个页面 ,它运作良好。 但是我还是不知道如何在没有docker机的情况下build立群集群。
[更新]另一种方法也不行。
docker-machine create -d virtualbox \ --swarm \ --swarm-discovery="consul://$(docker-machine ip mh-keystore):8500" \ --engine-opt="cluster-store=consul://$(docker-machine ip mh-keystore):8500" \ --engine-opt="cluster-advertise=eth1:2376" \ mhs-demo1
Node1docker信息出现mhs-demo1的IP但信息仍然未知..
[更新]
当我键入eval $(docker-machine env –swarm node1)它显示
检查TLS连接时出错:“node1”不是swarm master。 – 温度标志用于swarm master这是否会导致错误? 为什么使用swarm manager指令设置不是swarm master?
太奇怪了 我怎样才能得到相同的结果
docker-machine create \ -d virtualbox \ --swarm --swarm-master \ --swarm-discovery="consul://$(docker-machine ip mh-keystore):8500" \ --engine-opt="cluster-store=consul://$(docker-machine ip mh-keystore):8500" \ --engine-opt="cluster-advertise=eth1:2376" \ mhs-demo0
使用swarm指令?
我想使用swarm指令,因为我不想在创buildswarm时声明swarm master。
为什么你只使用docker-machine来启动一个节点? 你可以使用docker机器来设置你的节点,swarm准备好了。你可以按照这个教程https://docs.docker.com/engine/userguide/networking/get-started-overlay/
尝试删除此文件:
sudo rm /etc/docker/key.json
然后重新启动docker:
sudo service docker restart
在这一点上,docker将创build一个新的key.json文件,你的主人应该能够find你的工人。 这种情况有时会在您为所有的工作节点使用相同的映像时发生,但这是一个简单的修复方法。
在docker1.12群模式是直接可用的。 没有必要为集群创build关键值存储。
只需按照这个: https : //docs.docker.com/engine/swarm/swarm-tutorial/create-swarm/