ingress-nginx is an Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer.
Project status
This repository is a security-hardened fork of the original
kubernetes/ingress-nginxproject and is maintained by the redevops.io team. The upstream repository is currently in maintenance mode; this fork continues to deliver CVE fixes, regression tests, and Kubernetes compatibility updates while remaining API-compatible with the community controller.
Learn more about Ingress on the Kubernetes documentation site.
See the Getting Started document. The deployment manifests continue
to work with this fork; replace container/image references with the images published under the ghcr.io/redevops-io
namespace.
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.
If you encounter issues, review the troubleshooting docs and
file an issue. We track all bug reports, feature
requests, and CVE backports in this repository. You can also reach the maintainers in the #redevops-ingress channel on
the Kubernetes Slack or by opening a GitHub Discussion.
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.
We test every release line against the three most recent Kubernetes minors (n, n-1, n-2) as soon as upstream RC
builds become available. Each patch release in this repository is validated with:
- Kind- and Kops-based CI suites that cover
amd64andarm64images - The conformance-focused e2e suites under
test/e2e/... - CVE regression tests covering recent mitigations (auth URL quoting, snippet lockdown, mirror injection, etc.)
Supported versions for this fork mean that those CI suites are passing for the Kubernetes versions listed in the table below. Ingress NGINX may function on older clusters, but that scenario receives best-effort support only.
| Supported | Ingress-NGINX version | k8s supported version | Alpine Version | Nginx Version | Helm Chart Version |
|---|---|---|---|---|---|
| 🔄 | v1.14.0 | 1.34, 1.33, 1.32, 1.31, 1.30 | 3.22.2 | 1.27.1 | 4.14.0 |
| 🔄 | 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 this article if you want upgrade to the stable Ingress API. We follow the same API guarantees as the upstream project and publish deprecation notices in the release notes when Kubernetes changes require action from cluster operators.
Thanks for taking the time to join our community and start contributing!
-
This project adheres to the Kubernetes Community Code of Conduct. By participating in this project, you agree to abide by its terms.
-
Contributing: Contributions of all kinds are welcome!
- Read
CONTRIBUTING.mdfor information about setting up your environment, the workflow that we expect, and the Developer Certificate of Origin (DCO) sign-off we require on every commit. - Join our Kubernetes Slack channel for developer discussion:
#redevops-ingress. - Submit GitHub issues for any feature enhancements, bugs, or documentation problems.
- Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.
- For long-form proposals, open a GitHub Discussion or reach out via the redevops.io mailing list
(
ingress-maintainers@redevops.io).
- Read
-
Support:
- Join the
#redevops-ingresschannel inside the Kubernetes Slack to ask questions or get support from the maintainers and other users. - The GitHub issues in this repository are exclusively for bug reports and feature requests.
- Discuss: Tweet using the
#IngressNginxhashtag or sharing with us @IngressNginx.
- Join the