About this project

This repository provides the official Ingress Controller implementation for NGINX and NGINX Plus, maintained by the team behind NGINX. It runs inside a Kubernetes cluster and configures NGINX as the load balancer according to Ingress resources. Core capabilities: - Standard Ingress support: host-based and path-based content routing, plus TLS/SSL termination per hostname. - Extended configuration through annotations and the ConfigMap resource, exposing many NGINX and NGINX Plus features. - Load balancing for HTTP as well as WebSocket, gRPC, TCP, and UDP applications. - Custom resources VirtualServer and VirtualServerRoute for use cases beyond the standard Ingress, such as traffic splitting and advanced content-based routing. - TransportServer resource for TCP, UDP, and TLS passthrough load balancing. - Works with both open-source NGINX and commercial NGINX Plus; NGINX Plus usage is covered by the support contract. Getting started: install via the Helm chart or Kubernetes manifests, then configure load balancing using either the Ingress resource (Cafe example) or the VirtualServer resource (basic configuration example). Additional examples and full documentation are linked from the README. Release model: stable releases are published on GitHub, with 5.6.3 listed as the latest stable version at the time of writing; an edge/nightly version built from the main branch is available for experimenting with unreleased features. Images are distributed via DockerHub, GitHub Container Registry, Amazon ECR Public Gallery, and Quay.io; NGINX Plus images come from the F5 Container Registry or can be built from source. SBOMs for binaries and Docker images are generated with syft in SPDX format and attached as image attestations. The project is Apache-2.0 licensed, actively developed, and distinct from the kubernetes/ingress-nginx project. Community calls are held every other Monday, and a community forum is available for discussion.