将docker暴露的端口转发到同一容器上的另一个端口,而无需将其发布到主机

时间:2019-10-21 15:05:59

标签: docker

我有一个容器,该容器通过3000端口公开一个Web应用程序,另外一个女巫通过docker dns访问它。

我想使用80端口访问此容器,而无需修改Web应用程序,也不需要将其直接暴露给主机(也称为--publish)。基本上从内部将80端口转发到3000端口。

是否可以使用docker而不将容器修改为具有socat之类的东西?

1 个答案:

答案 0 :(得分:1)

否,Docker没有此功能。唯一的端口重新映射是使用docker run -p选项在Docker空间之外发布端口时,这永远不会影响服务间通信。您唯一的选择是更改服务器配置以侦听端口80,或更改客户端配置以包含显式端口3000。

(Kubernetes Services do 具有此功能,我倾向于将非特权端口从给定的Pod重新映射到Service中的标准HTTP端口,但这根本不是Docker的核心功能。)