我如何才能将 Docker 容器端口仅公开给本地主机,以便它也可以通过 ssh 隧道访问?
How can I expose a Docker container port only to localhost so that it is also accessible via an ssh tunnel?
希望直截了当。我知道如何仅使用
绑定到主机
-p 127.0.0.1:$HOSTPORT:$CONTAINERPORT
我遇到的问题是这样做会阻止我通过 ssh 隧道访问映射的主机端口到 docker 主机。
有没有办法做到这一点而不必在某处阻塞 docker 主机的上游端口?
只需将您的 ssh 隧道作为目标 localhost
或 127.0.0.1
。
ssh -L local-port:127.0.0.1:container-port docker-host
会在 docker-host
上将您的 local-port
转发给 localhost:container-port
。无需对外暴露容器端口
希望直截了当。我知道如何仅使用
绑定到主机-p 127.0.0.1:$HOSTPORT:$CONTAINERPORT
我遇到的问题是这样做会阻止我通过 ssh 隧道访问映射的主机端口到 docker 主机。
有没有办法做到这一点而不必在某处阻塞 docker 主机的上游端口?
只需将您的 ssh 隧道作为目标 localhost
或 127.0.0.1
。
ssh -L local-port:127.0.0.1:container-port docker-host
会在 docker-host
上将您的 local-port
转发给 localhost:container-port
。无需对外暴露容器端口