通过网络链接容器

时间:2017-08-23 03:37:18

标签: linux docker networking rancher

我有两个容器,一个webapp和一个数据库。

网络应用程序位于网络10.10.1.10/24上,使用macvlan驱动程序为此用户定义的网络,此网络的名称为 mnet

link / ether 02:42:0a:84:01:05     inet 10.10.1.10/24范围全球eth0

Db容器位于inet 10.10.11.2/24 scope global eth0

为此用户定义的网络使用网桥驱动程序,此网络的名称为 int

我可以ping mnet网关(10.10.10.1)和本地网络上的所有其他计算机,但不能ping数据库容器中docker托管的webapp(10.10.10.5)。

我想在此网络上将webapp与db链接,但无法与db建立连接,反之亦然。

如果我将db容器与webapp网络相同,我可以链接两者。

我不希望他们放在同一网络上的原因是 mnet 与我们的LAN集成在一起,所以我想隔离用户访问数据库容器。

环境:生产

Docker版本:17.03.1-ce

OS:RancherOs

是否有解决此问题的工作,原因或解决方案。

1 个答案:

答案 0 :(得分:0)

容器可以位于多个网络上。创建一个新的用户定义网络,并将数据库和Web应用程序放在该网络上。然后,当他们想要彼此交谈时,他们将使用这个新网络,但其他流量将使用您现有的网络。