问题:为什么有时需要在docker上运行nginx?

我正在学习 docker 和 nginx(jwilder/nginx-proxy, ...)。在配置过程中,我无法弄清楚为什么要在 docker 上安装 nginx。 AFAIK,可以使用暴露的端口访问容器,并且我的真实主机上只有一个 nginx 可以为它们提供服务。当 nginx 作为容器运行时,可以期待哪些优势?

解答

Nginx 服务器不是作为容器运行的_必需_,如果您没有看到这样做的好处,那么尝试按照自己的方式进行也没有什么坏处。

需要考虑的几点:

  1. 一些生产配置完全基于 docker。例如,当您运行 Kubernetes 或 Swarm 设置时。在这些配置中,虚拟服务器只运行 docker 引擎,没有别的。

  2. 将 nginx 作为容器运行与将其他任何东西作为容器运行具有相同的优势——它(自动)可扩展,由编排器保持健康,它是可移植的和可重现的。

  3. 既然你提到了 jwilder 的反向代理——你可能知道它是一个专为 docker 设计的自动反向代理。它将自动检测新的或更新的容器,并调整其配置以匹配。

Logo

开发云社区提供前沿行业资讯和优质的学习知识,同时提供优质稳定、价格优惠的云主机、数据库、网络、云储存等云服务产品

更多推荐