ingress-nginx README

The project's README from github.com/kubernetes/ingress-nginx. As one markdown file: README.md.

Ingress NGINX Retirement

Retiring

What You Need to Know about Ingress NGINX Retirement:

Ingress NGINX Controller

CII Best Practices Go Report Card GitHub license GitHub stars

Overview

ingress-nginx was an Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer.

Learn more about Ingress on the Kubernetes documentation site.

Usage warnings

If you are not already using ingress-nginx, you should not be deploying it as it is not being developed. Instead you should identify a Gateway API implementation and use it.

Do not use in multi-tenant Kubernetes production installations. This project assumes that users that can create Ingress objects are administrators of the cluster. See the FAQ for more.

Troubleshooting

If you encounter issues, review the troubleshooting docs, search for an issue, or talk to us on the #ingress-nginx-users channel on the Kubernetes Slack server.

Changelog

See the list of releases for all changes. For detailed changes for each release, please check the changelog-$version.md file for the release version. For detailed changes on the ingress-nginx helm chart, please check the changelog folder for a specific version. CHANGELOG-$current-version.md file.

Supported Versions table

Supported versions for the ingress-nginx project mean that we have completed E2E tests, and they are passing for the versions listed. Ingress-Nginx versions may work on older versions, but the project does not make that guarantee.

Supported Ingress-NGINX version k8s supported version Alpine Version Nginx Version Helm Chart Version
🔄 v1.15.1 1.35, 1.34, 1.33, 1.32, 1.31 3.23.3 1.27.1 4.15.1
🔄 v1.15.0 1.35, 1.34, 1.33, 1.32, 1.31 3.23.3 1.27.1 4.15.0
🔄 v1.14.5 1.34, 1.33, 1.32, 1.31, 1.30 3.23.3 1.27.1 4.14.5
🔄 v1.14.4 1.34, 1.33, 1.32, 1.31, 1.30 3.23.3 1.27.1 4.14.4
🔄 v1.14.3 1.34, 1.33, 1.32, 1.31, 1.30 3.23.2 1.27.1 4.14.3
🔄 v1.14.2 1.34, 1.33, 1.32, 1.31, 1.30 3.23.2 1.27.1 4.14.2
🔄 v1.14.1 1.34, 1.33, 1.32, 1.31, 1.30 3.22.2 1.27.1 4.14.1
🔄 v1.14.0 1.34, 1.33, 1.32, 1.31, 1.30 3.22.2 1.27.1 4.14.0
🔄 v1.13.9 1.33, 1.32, 1.31, 1.30, 1.29 3.23.3 1.27.1 4.13.9
🔄 v1.13.8 1.33, 1.32, 1.31, 1.30, 1.29 3.23.3 1.27.1 4.13.8
🔄 v1.13.7 1.33, 1.32, 1.31, 1.30, 1.29 3.23.2 1.27.1 4.13.7
🔄 v1.13.6 1.33, 1.32, 1.31, 1.30, 1.29 3.23.2 1.27.1 4.13.6
🔄 v1.13.5 1.33, 1.32, 1.31, 1.30, 1.29 3.22.2 1.27.1 4.13.5
🔄 v1.13.4 1.33, 1.32, 1.31, 1.30, 1.29 3.22.2 1.27.1 4.13.4
🔄 v1.13.3 1.33, 1.32, 1.31, 1.30, 1.29 3.22.1 1.27.1 4.13.3
🔄 v1.13.2 1.33, 1.32, 1.31, 1.30, 1.29 3.22.1 1.27.1 4.13.2
🔄 v1.13.1 1.33, 1.32, 1.31, 1.30, 1.29 3.22.1 1.27.1 4.13.1
🔄 v1.13.0 1.33, 1.32, 1.31, 1.30, 1.29 3.22.0 1.27.1 4.13.0
v1.12.8 1.32, 1.31, 1.30, 1.29, 1.28 3.22.2 1.25.5 4.12.8
v1.12.7 1.32, 1.31, 1.30, 1.29, 1.28 3.22.1 1.25.5 4.12.7
v1.12.6 1.32, 1.31, 1.30, 1.29, 1.28 3.22.1 1.25.5 4.12.6
v1.12.5 1.32, 1.31, 1.30, 1.29, 1.28 3.22.1 1.25.5 4.12.5
v1.12.4 1.32, 1.31, 1.30, 1.29, 1.28 3.22.0 1.25.5 4.12.4
v1.12.3 1.32, 1.31, 1.30, 1.29, 1.28 3.21.3 1.25.5 4.12.3
v1.12.2 1.32, 1.31, 1.30, 1.29, 1.28 3.21.3 1.25.5 4.12.2
v1.12.1 1.32, 1.31, 1.30, 1.29, 1.28 3.21.3 1.25.5 4.12.1
v1.12.0 1.32, 1.31, 1.30, 1.29, 1.28 3.21.0 1.25.5 4.12.0
v1.12.0-beta.0 1.32, 1.31, 1.30, 1.29, 1.28 3.20.3 1.25.5 4.12.0-beta.0
v1.11.8 1.30, 1.29, 1.28, 1.27, 1.26 3.22.0 1.25.5 4.11.8
v1.11.7 1.30, 1.29, 1.28, 1.27, 1.26 3.21.3 1.25.5 4.11.7
v1.11.6 1.30, 1.29, 1.28, 1.27, 1.26 3.21.3 1.25.5 4.11.6
v1.11.5 1.30, 1.29, 1.28, 1.27, 1.26 3.21.3 1.25.5 4.11.5
v1.11.4 1.30, 1.29, 1.28, 1.27, 1.26 3.21.0 1.25.5 4.11.4
v1.11.3 1.30, 1.29, 1.28, 1.27, 1.26 3.20.3 1.25.5 4.11.3
v1.11.2 1.30, 1.29, 1.28, 1.27, 1.26 3.20.0 1.25.5 4.11.2
v1.11.1 1.30, 1.29, 1.28, 1.27, 1.26 3.20.0 1.25.5 4.11.1
v1.11.0 1.30, 1.29, 1.28, 1.27, 1.26 3.20.0 1.25.5 4.11.0
v1.10.6 1.30, 1.29, 1.28, 1.27, 1.26 3.21.0 1.25.5 4.10.6
v1.10.5 1.30, 1.29, 1.28, 1.27, 1.26 3.20.3 1.25.5 4.10.5
v1.10.4 1.30, 1.29, 1.28, 1.27, 1.26 3.20.0 1.25.5 4.10.4
v1.10.3 1.30, 1.29, 1.28, 1.27, 1.26 3.20.0 1.25.5 4.10.3
v1.10.2 1.30, 1.29, 1.28, 1.27, 1.26 3.20.0 1.25.5 4.10.2
v1.10.1 1.30, 1.29, 1.28, 1.27, 1.26 3.19.1 1.25.3 4.10.1
v1.10.0 1.29, 1.28, 1.27, 1.26 3.19.1 1.25.3 4.10.0
v1.9.6 1.29, 1.28, 1.27, 1.26, 1.25 3.19.0 1.21.6 4.9.1
v1.9.5 1.28, 1.27, 1.26, 1.25 3.18.4 1.21.6 4.9.0
v1.9.4 1.28, 1.27, 1.26, 1.25 3.18.4 1.21.6 4.8.3
v1.9.3 1.28, 1.27, 1.26, 1.25 3.18.4 1.21.6 4.8.*
v1.9.1 1.28, 1.27, 1.26, 1.25 3.18.4 1.21.6 4.8.*
v1.9.0 1.28, 1.27, 1.26, 1.25 3.18.2 1.21.6 4.8.*
v1.8.4 1.27, 1.26, 1.25, 1.24 3.18.2 1.21.6 4.7.*
v1.7.1 1.27, 1.26, 1.25, 1.24 3.17.2 1.21.6 4.6.*
v1.6.4 1.26, 1.25, 1.24, 1.23 3.17.0 1.21.6 4.5.*
v1.5.1 1.25, 1.24, 1.23 3.16.2 1.21.6 4.4.*
v1.4.0 1.25, 1.24, 1.23, 1.22 3.16.2 1.19.10† 4.3.0
v1.3.1 1.24, 1.23, 1.22, 1.21, 1.20 3.16.2 1.19.10† 4.2.5

See Updating NGINX-Ingress to use the stable Ingress API (July 26, 2021) to upgrade to the stable Ingress API before upgrading to Kubernetes 1.22.

Get Involved

Thanks for taking the time to join our community and start contributing!

License

Apache License 2.0

ingress-nginx (kubernetes/ingress-nginx)

Searching Database…

19.5K ·GitHub
archived
What is this?ingress-nginx was an Ingress controller for Kubernetes that used NGINX as a reverse proxy and load balancer to route traffic into clusters. The project is now retired.
If my cluster still runs it, what exactly is deployed?A controller that runs inside your cluster and drives NGINX as the traffic path, installed via its official Helm chart. Charts and container images remain available even after retirement.
Should I pick it for a brand-new cluster?No. The README is blunt: if you are not already using ingress-nginx, you should not deploy it — identify a Gateway API implementation and use that instead.
Which Kubernetes versions do the final releases support?The final v1.15.x line is tested against Kubernetes 1.31-1.35 and ships NGINX 1.27.1. Older releases target older clusters, e.g. v1.11.x for 1.26-1.30.
I saw it's retired — what does that actually mean for someone still running it?Best-effort maintenance runs until March 2026; after that there are no releases, no bugfixes and no security fixes. Deployments that already exist will not break.
Is it okay to use in a shared, multi-tenant production cluster?No. The project says not to use it in multi-tenant production and assumes that anyone who can create Ingress objects is a cluster administrator.
What is an Ingress in Kubernetes, exactly?It is the Kubernetes mechanism for exposing services to outside traffic. An ingress controller like this one watches Ingress objects and turns them into NGINX reverse-proxy and load-balancing rules.
Was this an official Kubernetes project?Yes — it lived under the kubernetes GitHub organization, followed the Kubernetes Community Code of Conduct, and user support ran through the #ingress-nginx-users channel on Kubernetes Slack.
What does 'supported version' mean in its compatibility table?A combination where the project completed E2E tests and they pass. Versions may still work on older Kubernetes releases, but that is not guaranteed.
What are similar projects?apisix, k3s, cilium, containerd, tengine, traefik, distribution, Reloader
Creator
kubernetes
Size
147.8 MB
Stars
19.5K
Age
9y
Commits · 90 Days