如何在没有端口转发或使用docker host ip的情况下,使用来自不同主机的docker private ip和port访问docker服务

时间:2016-04-21 06:03:29

标签: amazon-web-services docker firewall iptables

我有以下设置,其中两个主机都在同一个VPC中。

主持人1:

 public ip : 53.X.X.X 
 private ip : 172.X.X.X 
 docker ip : 173.16.42.1 (bridge ip)

主持人2:

 public ip : 53.X.X.X 
 private ip : 172.X.X.X

现在,当我从host1启动容器时,让我们说tomcat,如何使用来自Host2的私有端口访问此服务器?

我想从host2 173.16.42.2:8080这样做。在host2中添加了host1名称服务器。

基本上,我想要这个用例,因为我使用consul进行服务发现,并且在consul服务中注册为173.16.42.2:8080。但是当我做nslookup tomcat.service.consul时,我能够解析服务ip和端口。但是当我为这个ip"端口做telnet或curl时,它会超时。允许主机之间的所有流量和iptables规则。

我能够通过端口转发和使用主机ip访问服务来实现上述用例。但我需要上述方法173.16.42.2:8080来自host2

所以任何建议都会有所帮助

0 个答案:

没有答案