使用Docker swarm模式并在外部公开端口时,至少有三个网络,即入口网络,网桥和覆盖网络(用于内部群集通信)。容器使用eth0-2
(每次随机)接口之一加入这些网络,从应用程序的角度来看,不容易理解哪些是集群网络(用于服务发现客户端发布的正确接口) - 例如Spring Eureka)。
有没有办法以某种方式自定义网络接口名称?
答案 0 :(得分:1)
不是你问题的直接答案,但swarm模式的一个关键卖点是内置的服务发现机制,在我看来非常合适。
更相关的是,我不认为可以为覆盖网络指定所需的界面。但是,在创建网络时, 可以定义子网或网络的IP范围(https://docs.docker.com/engine/reference/commandline/network_create/)。您可以使用它来识别属于您的覆盖网络的接口,方法是检查绑定的IP地址是否是您要发布的网络的一部分。