跨主机沟通:大使模式与港口博览会

我找不到任何其他方式来build立两个Docker容器(此时)之间的跨主机通信,而不是使用这里提出的大使模式。

我想知道使用这种模式比简单使用Docker提供的端口展示有什么优点。 以下是我如何使用端口展示技术的示例:

节点A.

ifconfig eth0 192.168.56.101 docker run -i -t -p 5558 --name NodeA ubuntu /bin/bash 

然后,本地端口到Docker容器:5558映射到主机的物理端口49153。

(5558 – > 49153)

节点B.

 ifconfig eth0 192.168.56.103 docker run -i -t -p 5558 --name NodeB ubuntu /bin/bash 

然后,本地端口,到Docker容器:5558映射到主机的物理端口49156。

(5558 – > 49156)

*从Docker容器到物理端口的端口映射可以通过使用-p 5558:5558来强制

跨主机容器通信

然后NodeA可以通过以下IP地址与NodeB,容器到容器进行通信:

 192.168.56.103:49156 

而NodeB可以从容器内部监听端口5558。

结论

这似乎是一种直接的方式来实现这种沟通,虽然它非常像集装箱概念的破解。 我的问题是为什么使用一个选项而不是实际上打破了从主机隔离的概念?