0

我正在尝试创建一个在 Vagrant 中运行的不同 ubuntu 虚拟机的集群。这些通过引导它们的 vagrant 文件启用了 docker。在三个虚拟机中,我通过以下方式在一台机器上启动了 swarm 集群

docker pull swarm
docker run --rm swarm create

这返回了一个唯一的 cluster_id。在另一个启用 docker 的 vm 上,我执行了以下步骤

  1. 停止 docker 守护进程

    sudo service docker stop

  2. 使用 -H 标志启动守护进程

    sudo docker -H tcp://0.0.0.0:2375 -d

这给出了以下

    INFO[0000] +job init_networkdriver()
    INFO[0000] +job serveapi(tcp://0.0.0.0:2375)
    INFO[0000] Listening for HTTP on tcp (0.0.0.0:2375)
    INFO[0000] /!\ DON'T BIND ON ANY IP ADDRESS WITHOUT setting -tlsverify IF        YOU DON'T KNOW WHAT YOU'RE DOING /!\
    INFO[0000] -job init_networkdriver() = OK (0)
    INFO[0000] Loading containers: start.

    INFO[0000] Loading containers: done.
    INFO[0000] docker daemon: 1.6.2 7c8fca2; execdriver: native-graphdriver:aufs
    INFO[0000] +job acceptconnections()
    INFO[0000] -job acceptconnections() = OK (0)
    INFO[0000] Daemon has completed initialization

在此之后,我开始与该节点的另一个会话并希望运行以下命令:

sudo docker run -d swarm join --addr=<node_ip:2375> token://<cluster_id>

在这种情况下,节点 ip 是多少?在这个虚拟机上使用 arp -an 给了我三个 IP,其中一个是可以访问的

4

1 回答 1

1

如评论中的显示群/发现

# on each of your nodes, start the swarm agent
#  <node_ip> doesn't have to be public (eg. 192.168.0.X),
#  as long as the swarm manager can access it.
$ swarm join --addr=<node_ip:2375> token://<cluster_id>

node_ip是集群新节点的ip地址。

于 2015-06-18T18:51:49.633 回答