我正在使用docker swarm部署内部部署第三方应用程序。我要部署的计算机正在运行RHEL 7.6,并且具有两个网络接口。用户将通过与该应用程序进行交互eth0
,但是必须使用与其系统的内部通信,eth1
否则该连接将被其防火墙阻止。我的应用程序需要我的某些服务才能在其网络中建立连接内部服务。
我使用以下方法创建了群集:
$ docker swarm init --advertise-addr x.x.x.x
哪里x.x.x.x
是eth0
INET地址。这适用于服务的传入用户流量。但是,当我尝试建立与另一服务的连接时,连接被防火墙阻止而超时。
在docker之外,在机器上,我可以运行:
ssh -b y.y.y.y user@server
哪里y.y.y.y
是eth1
INET地址,和它的作品。当我在docker swarm容器中运行相同命令时,出现以下错误:
绑定:yyyy:无法分配请求的地址
有什么办法可以在docker swarm中使用多个网络接口并指定在容器中使用哪个接口?我找不到关于此的大量文档。我需要设置某种代理吗?