【问题标题】:How to access Consul used in Docker overlay networks?如何访问 Docker 覆盖网络中使用的 Consul?
【发布时间】:2016-07-12 01:15:47
【问题描述】:

我确实设置了使用 Consul 的覆盖多主机网络,没有 Swarm。

我想根据自己的需要访问 Consul。当我在本地(在几台 docker 机器上)运行我的 docker 基础架构时,我无法通过以下方式访问它:

consul members --rpc-addr=192.168.99.100:8500

这不会返回任何东西。端口8500 是唯一暴露的。我看到8300(和一堆其他端口)也打开了,但没有暴露。

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

【问题讨论】:

    标签: docker consul


    【解决方案1】:

    consul 使用了不同的端口。

    • 8500 用于与其他领事代理通信。
    • 8400 用于执行 RPC,consul 代理绑定到使用选项 -bind(默认为本地)指定的 IP 地址。

    因此命令:

    consul agent -data-dir /tmp/consul -node=$HOSTNAME -bind=$IP
    

    这将启动一个名为$HOSTNAME并绑定到IP地址$IP的领事代理,可以通过consul members -rpc-addr=$IP:8400等命令向其发送命令。


    您可能会发现this answer 很有用。它描述了使用 Consul 使用 Swarm 运行多主机覆盖网络的分步教程。


    编辑

    正如@vince-bowdren 所指出的,文档给出了in depth details on the various udp/tcp ports used by consul

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 2019-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-17
    • 1970-01-01
    相关资源
    最近更新 更多