jwilder/nginx-proxy 和 kubernetes/ingress-nginx 有什么区别

Pus*_*ots 4 nginx kubernetes jwilder-nginx-proxy kubernetes-ingress

jwilder/nginx-proxy 在 Docker Hub 上拥有 1.3K STARS 和 10M+ PULLS。以及 GitHub 上的 Watch 262、Star 7701、Fork 1546。 https://github.com/jwilder/nginx-proxy

kubernetes/ingress-nginx 在 kubeapps.com(星级最高的图表之一)上有 13 颗星,在 GitHub 上有 137 颗星、1596 颗星、918 颗星。 https://github.com/kubernetes/ingress-nginx

  1. 两者有什么区别?
  2. 你什么时候会使用其中一种而不是另一种?

Ant*_*nko 6

这是两个不同的应用程序,但都基于Nginx并且具有相似的功能。

  1. jwilder 的 Nginx-proxy 是 Docker 容器的代理服务器,其中包括docker-gen自动生成 Nginx 配置。您可以将其用于 SSL 终止、负载平衡等。但是在 Kubernetes 中管理 nginx-proxy 会很困难。

  2. Kubernetes 的 Ingress-nginx 是Ingress Controller ,它为 Kubernetes 集群提供Ingress功能。它还可以执行 SSL 终止和其他一些操作,但它是专门为在 Kubernetes 中使用而创建的,并且是抽象的。这意味着您可以创建包含服务作为后端的Ingress 对象并使用选择器等。

因此,如果您使用 Kubernetes,Ingress-nginx 是最佳选择。如果您仅使用 Docker 容器而没有协调器,请使用 Nginx-proxy。