有没有办法重命名 Docker swarm 中的网络接口?

Is there a way to rename network interfaces in Docker swarm?

当使用Docker swarm 模式并在外部暴露端口时,您至少有三个网络,入口网络、桥接网络和覆盖网络(用于内部集群通信)。容器使用 eth0-2(每次随机)接口之一加入这些网络,从应用程序的角度来看,不容易理解其中哪个是集群网络(用于服务发现客户端发布的正确网络 -例如 Spring 尤里卡)。 有没有办法以某种方式自定义网络接口名称?

这不是您问题的直接答案,但 swarm 模式的主要卖点之一是内置的服务发现机制,在我看来,它的效果非常好。

更相关的是,我认为不可能为覆盖网络指定所需的接口。但是,在创建网络时,可以 定义网络的子网或 IP 范围 (https://docs.docker.com/engine/reference/commandline/network_create/)。您可以使用它来识别属于您的覆盖网络的接口,方法是检查绑定的 IP 地址是否是您要发布的网络的一部分。