Consul和Docker连接问题

我试图运行Consul代理作为Docker容器遵循以下官方指南: https : //hub.docker.com/_/consul/

第一个代理成功启动: docker run -d –name = dev-consul consul

但是,当我启动命令docker运行-d consul代理-dev -join = 172.17.0.2第二个代理停止时出现错误:

==> Starting Consul agent... ==> Joining cluster... ==> 1 error(s) occurred: * Failed to join 172.17.0.2: dial tcp 172.17.0.2:8301: i/o timeout 

我检查了第一个容器IP是172.17.0.2。 我的Docker版本是17.06.2-ce,build cec0b72。 Consul版本0.9.3

请指教。

是的,我不认为这将是新版本的docker机和当前版本的领事。

你不是唯一一个在看评论时遇到问题的人,而且也在尝试自己(与所有内容相同的版本)。

尝试启动一个服务器和几个客户端容器。

 docker run -d --name=node0 consul agent -server -client=0.0.0.0 -node=node0 -bootstrap-expect=1 -bind=172.17.0.2 -data-dir=/tmp/consul docker run -d --name=node1 consul agent -client=0.0.0.0 -node=node1 -bind=172.17.0.3 -data-dir=/tmp/consul -join=172.17.0.2 docker run -d --name=node1 consul agent -client=0.0.0.0 -node=node2 -bind=172.17.0.4 -data-dir=/tmp/consul -join=172.17.0.2 

老实说,在这个“开发”模式中运行起来并不是很重要。