我正在使用Docker Compose创建相当复杂的容器基础设施。这些容器在4个不同的网络中运行(类似于我模仿的生产环境)。Docker Compose为我创建了这四个网络,只要容器不尝试与不同网络内的其他容器通信,一切都可以正常工作。但是当它们尝试进行通信时,连接会断开。我已经找到了连接断开的原因,那就是Docker将iptables规则添加到DOCKER-ISOLATION链中。例如:
我写了一个小脚本,用于删除我想要删除的规则(并允许所选桥之间的通信),一切都运行得很好,但不知何故,这些规则在某个时刻由Docker重新创建,即使没有重新创建这些网络,因此我需要再次运行该脚本,这非常令人烦恼。 有没有办法明确告诉Docker允许两个桥之间的通信?或者也许有一些技巧可以在使用Docker-Compose启动容器后运行特定的shell脚本吗?
-A DOCKER-ISOLATION -i br-be010eaddd0e -o br-f788f16ed0dd -j DROP
-A DOCKER-ISOLATION -i br-f788f16ed0dd -o br-be010eaddd0e -j DROP
我写了一个小脚本,用于删除我想要删除的规则(并允许所选桥之间的通信),一切都运行得很好,但不知何故,这些规则在某个时刻由Docker重新创建,即使没有重新创建这些网络,因此我需要再次运行该脚本,这非常令人烦恼。 有没有办法明确告诉Docker允许两个桥之间的通信?或者也许有一些技巧可以在使用Docker-Compose启动容器后运行特定的shell脚本吗?