一尘不染

从Docker容器访问主机的ssh隧道

docker

使用ubuntu tusty,在远程计算机上运行了一项服务,我可以通过SSH隧道通过端口转发访问该服务localhost:9999

我正在运行一个Docker容器。我需要通过主机的隧道从容器内部访问该远程服务。

我尝试使用进行从容器到主机的隧道传输-L 9000:host- ip:9999,然后127.0.0.1:9000从容器内部通过访问服务失败。为了检查端口映射是否打开,我尝试了 nc -luv -p 9999 # at host nc -luv -p 9000 # at container

此之后,parag。2,但即使nc -luv host-ip -p 9000 在集装箱处也没有察觉的交流

我还尝试通过映射端口docker run -p 9999:9000,但是这报告绑定失败,因为主机端口已被使用(从主机隧道到远程计算机,大概是在使用中)。

所以我的问题是

1-如何实现连接?我是否需要设置一条通往主机的ssh隧道,还是可以仅通过docker端口映射来实现?

2-测试连接正常的快速方法是什么?最好通过bash。

谢谢。


阅读 519

收藏
2020-06-17

共1个答案

一尘不染

我认为您可以通过添加--net=host到docker
run中来做到这一点。但也请参见以下问题:将主机端口转发到Docker容器

2020-06-17