我有以下情况。我有一个服务,在端口1234上侦听127.0.0.1(出于安全原因,这不能更改)。在同一台机器上运行一个docker容器。我需要以某种方式从容器内连接到主机上的服务。因为服务只接受来自127.0.0.1的请求,所以我需要以某种方式将端口从容器链接到主机端口,但是相反,所以当我从容器内连接到127.0.0.1:1234时,主机上的服务将收到数据。这可能吗?
感谢。
答案 0 :(得分:2)
使用默认的桥接网络,您无法从容器连接到侦听127.0.0.1的主机上的服务。但是,运行容器时可以使用--net=host
直接在容器中使用主机网络堆栈。它删除了一些隔离,但随后允许您直接与127.0.0.1作为容器对话,并与主机上运行的服务进行通信。
答案 1 :(得分:-2)
如何在localhost:port上绑定Dockerized服务?
使用-p
:docker run -p 127.0.0.1:1234:1234 <other options> <image> <command>
。