从docker访问主机端口为localhost

时间:2015-10-30 12:51:57

标签: docker

我有两台通过SSH隧道连接的计算机,以便machine1:2222可以作为localhost访问machine2:2222machine2运行容器docker2,并将端口2222上的服务仅公开给localhost。我可以通过端口machine1上的2222访问这些内容。

我希望能够从machine1:2222访问docker1,这是一个在machine1上运行的容器localhost。我可以在docker1内确定网关IP地址,但是连接会被拒绝,因为它们来自分配给docker1而非localhost的IP地址。

那么,从machine2 docker1 machine1访问{{1}}上的服务的最佳方法是什么?我见过的解决方案似乎涉及在主机上修改iptables,这看起来并不是那么便携。

1 个答案:

答案 0 :(得分:1)

这是--net标志的用途:

user@machine1:/ docker run --net="host" -ti docker1 /bin/bash

root@machine1:/ wget localhost:2222
>> (this will download whatever a request to machine2:2222 provides)
相关问题