docker集装箱作为两个docker桥之间的网关

我正在试图用docker模拟生产networking。

我有两个docker桥, bridge1bridge2

我想把另一个docker集装箱作为它们之间的router gateway

不知道下面的命令,想要这样做:

 Router: (172.17.0.2) iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE iptables -I FORWARD -s 192.168.9.0/24 -d 192.168.8.0/24 -j ACCEPT iptables -I FORWARD -s 192.168.8.0/24 -d 192.168.9.0/24 -j ACCEPT 

 Bridge1: ip route add 192.168.9.0/24 via 172.17.0.2 dev eth0 

 Bridge2: ip route add 192.168.8.0/24 via 172.17.0.2 dev eth0 

上述命令是否正确? 但我怎样才能添加这些iptables规则,一些我不能改变它们。

您需要--cap-add=NET_ADMIN才能在--cap-add=NET_ADMIN容器中运行iptables命令。

阅读: https : //docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities