Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the difference between jwilder/nginx-proxy and kubernetes/ingress-nginx

jwilder/nginx-proxy has 1.3K STARS and 10M+ PULLS on Docker Hub. And Watch 262, Star 7701, Fork 1546 on GitHub. https://github.com/jwilder/nginx-proxy

kubernetes/ingress-nginx has 13 stars on kubeapps.com (one of the most starred charts) and Watch 137, Star 1596, Fork 918 on GitHub. https://github.com/kubernetes/ingress-nginx

  1. What's the difference between the two?
  2. When would you use one over the other?
like image 685
PussInBoots Avatar asked Oct 16 '25 21:10

PussInBoots


1 Answers

That is 2 different applications, but both are based on Nginx and have the similar function.

  1. Nginx-proxy by jwilder is a proxy server for Docker containers which includes docker-gen to generate a configuration for Nginx automatically. You can use it for SSL termination, load balancing etc. But it will be hard to manage nginx-proxy in Kubernetes.

  2. Ingress-nginx by Kubernetes is Ingress Controller which provides Ingress functional for your Kubernetes cluster. It also can do SSL termination and some other things, but it was created especially for use in Kubernetes, and it's abstractions. That means you can create the Ingress object which includes Services as backends and use selectors etc.

So, if you are using Kubernetes, Ingress-nginx is the best choice. If you are using just Docker containers without an orchestrator, use Nginx-proxy.

like image 150
Anton Kostenko Avatar answered Oct 18 '25 16:10

Anton Kostenko