如何访问Docker覆盖网络中使用的领事?

如何访问Docker覆盖网络中使用的领事?,docker,consul,Docker,Consul,我确实设置了覆盖多主机网络,使用领事,没有Swarm 我想根据自己的需要联系领事。当我在本地(在多台docker机器上)运行docker基础设施时,我无法通过以下方式访问它: consul members --rpc-addr=192.168.99.100:8500 这不会返回任何内容。端口8500是唯一暴露的端口。我看到8300(以及一堆其他端口)也打开了,但没有公开 我应该暴露8300吗?为什么Docker/VMs使用8500?领事使用不同的端口 8500用于与其他领事代理进行通信 84

我确实设置了覆盖多主机网络,使用领事,没有Swarm

我想根据自己的需要联系领事。当我在本地(在多台docker机器上)运行docker基础设施时,我无法通过以下方式访问它:

consul members --rpc-addr=192.168.99.100:8500
这不会返回任何内容。端口
8500
是唯一暴露的端口。我看到
8300
(以及一堆其他端口)也打开了,但没有公开


我应该暴露8300吗?为什么Docker/VMs使用8500?

领事使用不同的端口

  • 8500
    用于与其他领事代理进行通信
  • 8400
    用于执行RPC,领事代理绑定到使用选项
    -bind
    (默认情况下为本地)指定的ip地址
因此命令:

consul agent -data-dir /tmp/consul -node=$HOSTNAME -bind=$IP
这将启动一个名为
$HOSTNAME
并绑定到IP地址
$IP
的领事代理,可以通过
领事成员-rpc addr=$IP:8400
等命令向其发送命令


你会发现这很有用。它描述了一个循序渐进的教程来运行一个多主机覆盖网络与Swarm使用领事


编辑
正如所指出的,文档给出了。

领事使用了不同的端口

  • 8500
    用于与其他领事代理进行通信
  • 8400
    用于执行RPC,领事代理绑定到使用选项
    -bind
    (默认情况下为本地)指定的ip地址
因此命令:

consul agent -data-dir /tmp/consul -node=$HOSTNAME -bind=$IP
这将启动一个名为
$HOSTNAME
并绑定到IP地址
$IP
的领事代理,可以通过
领事成员-rpc addr=$IP:8400
等命令向其发送命令


你会发现这很有用。它描述了一个循序渐进的教程来运行一个多主机覆盖网络与Swarm使用领事


编辑
正如所指出的,文档中给出了。

Consor使用了六种不同的端口,其中一些端口通过udp和tcp。请参见Concur使用的六个不同端口,其中一些端口通过udp和tcp。见