如何正确阻止对端口转发的docker容器的访问?

如何正确阻止对端口转发的docker容器的访问?

我有一个运行 Docker 的 VPS。我有一个运行该端口的 Apache 容器,它将一些随机端口转发到容器中的端口 80。

我可以在随机端口上访问我的 VPS IP,并且它可以按预期加载网站。

此外,我在 Nginx 反向代理上设置了 SSL,并希望通过 Nginx 终止 SSL,以明文形式将请求转发到容器。这也可以正常工作,但容器端口仍然暴露给外界。

推荐的方法是仅允许将 nginx conf 中定义的内容公开?换句话说,如何确保容器仅可由 nginx 访问?

答案1

默认情况下,docker 将映射端口绑定到0.0.0.0,这会将其暴露给所有接口。如果您不想这样,您可以仅将其绑定到本地接口。

docker run -p 127.0.0.1:8080:80 httpd

相关内容