我的桌面上运行了2个docker容器(Java应用程序和RabbitMQ)。我想模拟Java应用程序无法连接RabbitMQ的情况(但我不想停止RabbitMQ)。
我发现可能可以使用这样的命令
sudo iptables -A INPUT -p tcp --destination-port 5672 -j DROP
但是对于MacOS,我需要一个类似的例子。或者是另一种方法来断开2个Docker容器之间的连接。
答案 0 :(得分:0)
Docker不在MacOS上运行,而是在MacOS上运行的Linux VM中运行。因此,您可以在该VM上执行命令。我使用的一个常见的网络调试映像是nicolaka / netshoot(您可以在github repo中找到有关所包含实用程序和示例用法的更多信息。)
对于嵌入式Linux VM上的iptables,您可以运行以下命令:
docker run --rm --net host --privileged nicolaka/netshoot iptables ...