{"id":24284497,"url":"https://github.com/nginx/kubernetes-ingress","last_synced_at":"2026-01-19T17:01:35.106Z","repository":{"id":37214248,"uuid":"53553027","full_name":"nginx/kubernetes-ingress","owner":"nginx","description":"NGINX and  NGINX Plus Ingress Controllers for Kubernetes","archived":false,"fork":false,"pushed_at":"2025-05-08T01:29:53.000Z","size":76164,"stargazers_count":4779,"open_issues_count":159,"forks_count":1977,"subscribers_count":103,"default_branch":"main","last_synced_at":"2025-05-08T02:30:26.028Z","etag":null,"topics":["docker","go","golang","ingress","ingress-controller","k8s","kubernetes","nginx"],"latest_commit_sha":null,"homepage":"https://docs.nginx.com/nginx-ingress-controller","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nginx.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-03-10T03:45:12.000Z","updated_at":"2025-05-07T16:02:29.000Z","dependencies_parsed_at":"2023-10-11T19:29:19.585Z","dependency_job_id":"a5d95113-3a40-44cf-8fa1-436a5b39cc73","html_url":"https://github.com/nginx/kubernetes-ingress","commit_stats":{"total_commits":3890,"total_committers":188,"mean_commits":20.69148936170213,"dds":0.6928020565552699,"last_synced_commit":"166b95485c97f9b8750b7fe77859189715528930"},"previous_names":["nginx/kubernetes-ingress","nginxinc/kubernetes-ingress"],"tags_count":98,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nginx%2Fkubernetes-ingress","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nginx%2Fkubernetes-ingress/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nginx%2Fkubernetes-ingress/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nginx%2Fkubernetes-ingress/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nginx","download_url":"https://codeload.github.com/nginx/kubernetes-ingress/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253820001,"owners_count":21969455,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","go","golang","ingress","ingress-controller","k8s","kubernetes","nginx"],"created_at":"2025-01-16T05:15:26.096Z","updated_at":"2026-01-19T17:01:35.100Z","avatar_url":"https://github.com/nginx.png","language":"Go","funding_links":[],"categories":["Go","语音识别与合成_其他"],"sub_categories":["资源传输下载"],"readme":"\u003c!-- markdownlint-disable-next-line first-line-h1 --\u003e\n[![OpenSSFScorecard](https://api.securityscorecards.dev/projects/github.com/nginx/kubernetes-ingress/badge)](https://api.securityscorecards.dev/projects/github.com/nginx/kubernetes-ingress)\n[![Regression](https://github.com/nginx/kubernetes-ingress/actions/workflows/regression.yml/badge.svg?event=schedule)](https://github.com/nginx/kubernetes-ingress/actions/workflows/regression.yml?query=event%3Aschedule)\n[![FOSSA Status](https://app.fossa.com/api/projects/custom%2B5618%2Fgithub.com%2Fnginx%2Fkubernetes-ingress.svg?type=shield)](https://app.fossa.com/projects/custom%2B5618%2Fgithub.com%2Fnginx%2Fkubernetes-ingress?ref=badge_shield)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![Go Report Card](https://goreportcard.com/badge/github.com/nginx/kubernetes-ingress)](https://goreportcard.com/report/github.com/nginx/kubernetes-ingress)\n[![codecov](https://codecov.io/gh/nginx/kubernetes-ingress/branch/main/graph/badge.svg?token=snCn7Y0zC7)](https://codecov.io/gh/nginx/kubernetes-ingress)\n[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/nginx/kubernetes-ingress?logo=github\u0026sort=semver)](https://github.com/nginx/kubernetes-ingress/releases/latest)\n![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/nginx/kubernetes-ingress?logo=go)\n[![Docker Pulls](https://img.shields.io/docker/pulls/nginx/nginx-ingress?logo=docker\u0026logoColor=white)](https://hub.docker.com/r/nginx/nginx-ingress)\n![Docker Image Size (latest semver)](https://img.shields.io/docker/image-size/nginx/nginx-ingress?logo=docker\u0026logoColor=white\u0026sort=semver)\n[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/nginx-ingress)](https://artifacthub.io/packages/container/nginx-ingress/kubernetes-ingress)\n[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)\n![Commercial Support](https://badgen.net/badge/support/commercial/green?icon=awesome)\n\n# NGINX Ingress Controller\n\nThis repo provides an implementation of an Ingress Controller for NGINX and NGINX Plus from the people behind NGINX.\n\n---\n\n## Join The Next Community Call\n\nWe value community input and would love to see you at the next community call. At these calls, we discuss PRs by community members as well as issues, discussions and feature requests.\n\n**Zoom**: [NGINX Ingress Controller - Community Call](https://f5.zoom.us/j/98544055687?pwd=q4sGaaeWM0DawJTePBGbCngtfLJxgq.1\u0026from=addon)\n\n**Meeting ID:** `985 4405 5687`\n\n**Passcode:** `982193`\n\n**When**: 16:00 GMT / [Convert to your timezone](https://dateful.com/convert/gmt?t=16), every other Monday.\n\n| **Community Call Dates** |\n| ------------------------ |\n| **2025-12-15**           |\n| **2026-01-12**           |\n| **2026-01-26**           |\n| **2026-02-09**           |\n| **2026-02-23**           |\n\n\nYou can also join the [NGINX Community Forum](https://community.nginx.org) to chat about the NGINX Ingress Controller.\n\n---\n\nNGINX Ingress Controller works with both NGINX and NGINX Plus and supports the standard Ingress features - content-based\nrouting and TLS/SSL termination.\n\nAdditionally, several NGINX and NGINX Plus features are available as extensions to the Ingress resource via annotations\nand the ConfigMap resource. In addition to HTTP, NGINX Ingress Controller supports load balancing Websocket, gRPC, TCP\nand UDP applications. See\n[ConfigMap](https://docs.nginx.com/nginx-ingress-controller/configuration/global-configuration/configmap-resource/) and\n[Annotations](https://docs.nginx.com/nginx-ingress-controller/configuration/ingress-resources/advanced-configuration-with-annotations/)\ndocs to learn more about the supported features and customization options.\n\nAs an alternative to the Ingress, NGINX Ingress Controller supports the VirtualServer and VirtualServerRoute resources.\nThey enable use cases not supported with the Ingress resource, such as traffic splitting and advanced content-based\nrouting. See [VirtualServer and VirtualServerRoute resources\ndoc](https://docs.nginx.com/nginx-ingress-controller/configuration/virtualserver-and-virtualserverroute-resources/).\n\nTCP, UDP and TLS Passthrough load balancing is also supported. See the [TransportServer resource\ndoc](https://docs.nginx.com/nginx-ingress-controller/configuration/transportserver-resource/).\n\nRead [this doc](https://docs.nginx.com/nginx-ingress-controller/overview/nginx-plus/) to learn more about NGINX Ingress\nController with NGINX Plus.\n\n\u003e **Note**\n\u003e\n\u003e This project is different from the NGINX Ingress Controller in\n[kubernetes/ingress-nginx](https://github.com/kubernetes/ingress-nginx) repo.\n\n## Ingress and Ingress Controller\n\n### What is the Ingress?\n\nThe Ingress is a Kubernetes resource that lets you configure an HTTP load balancer for applications running on\nKubernetes, represented by one or more [Services](https://kubernetes.io/docs/concepts/services-networking/service/).\nSuch a load balancer is necessary to deliver those applications to clients outside of the Kubernetes cluster.\n\nThe Ingress resource supports the following features:\n\n- **Content-based routing**:\n  - *Host-based routing*. For example, routing requests with the host header `foo.example.com` to one group of services\n  and the host header `bar.example.com` to another group.\n  - *Path-based routing*. For example, routing requests with the URI that starts with `/serviceA` to service A and\n  requests with the URI that starts with `/serviceB` to service B.\n- **TLS/SSL termination** for each hostname, such as `foo.example.com`.\n\nSee the [Ingress User Guide](https://kubernetes.io/docs/concepts/services-networking/ingress/) to learn more about the\nIngress resource.\n\n### What is the Ingress Controller?\n\nThe Ingress Controller is an application that runs in a cluster and configures an HTTP load balancer according to\nIngress resources. The load balancer can be a software load balancer running in the cluster or a hardware or cloud load\nbalancer running externally. Different load balancers require different Ingress Controller implementations.\n\nIn the case of NGINX, the Ingress Controller is deployed in a pod along with the load balancer.\n\n## Getting Started\n\n\u003e **Note**\n\u003e\n\u003e All documentation should only be used with the latest stable release, indicated on [the releases\n\u003e page](https://github.com/nginx/kubernetes-ingress/releases) of the GitHub repository.\n\n1. Install NGINX Ingress Controller using the [Helm\n   chart](https://docs.nginx.com/nginx-ingress-controller/install/helm/) or the Kubernetes\n   [manifests](https://docs.nginx.com/nginx-ingress-controller/install/manifests/).\n1. Configure load balancing for a simple web application:\n    - Use the Ingress resource. See the [Cafe\n      example](https://github.com/nginx/kubernetes-ingress/tree/main/examples/ingress-resources/complete-example).\n    - Or the VirtualServer resource. See the [Basic\n      configuration](https://github.com/nginx/kubernetes-ingress/tree/main/examples/custom-resources/basic-configuration)\n      example.\n1. See additional configuration [examples](https://github.com/nginx/kubernetes-ingress/tree/main/examples).\n1. Learn more about all available configuration and customization in the\n   [docs](https://docs.nginx.com/nginx-ingress-controller/).\n\n## NGINX Ingress Controller Releases\n\nWe publish NGINX Ingress Controller releases on GitHub. See our [releases\npage](https://github.com/nginx/kubernetes-ingress/releases).\n\nThe latest stable release is [5.3.1](https://github.com/nginx/kubernetes-ingress/releases/tag/v5.3.1). For production\nuse, we recommend that you choose the latest stable release.\n\nThe edge version is useful for experimenting with new features that are not yet published in a stable release. To use\nit, choose the *edge* version built from the [latest\ncommit](https://github.com/nginx/kubernetes-ingress/commits/main) from the main branch.\n\nTo use NGINX Ingress Controller, you need to have access to:\n\n- An NGINX Ingress Controller image.\n- Installation manifests or a Helm chart.\n- Documentation and examples.\n\nIt is important that the versions of those things above match.\n\nThe table below summarizes the options regarding the images, Helm chart, manifests, documentation and examples and gives\nyour links to the correct versions:\n\n| Version | Description | Image for NGINX | Image for NGINX Plus | Installation Manifests and Helm Chart | Documentation and Examples |\n| ------- | ----------- | --------------- | -------------------- | --------------------------------------- | -------------------------- |\n| Latest stable release | For production use | Use the 5.3.1 images from [DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/), [GitHub Container](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress), [Amazon ECR Public Gallery](https://gallery.ecr.aws/nginx/nginx-ingress) or [Quay.io](https://quay.io/repository/nginx/nginx-ingress) or [build your own image](https://docs.nginx.com/nginx-ingress-controller/install/build/). | Use the 5.3.1 images from the [F5 Container Registry](https://docs.nginx.com/nginx-ingress-controller/install/images/registry-download/) or [Build your own image](https://docs.nginx.com/nginx-ingress-controller/install/build). | [Manifests](https://github.com/nginx/kubernetes-ingress/tree/v5.3.1/deployments). [Helm chart](https://github.com/nginx/kubernetes-ingress/tree/v5.3.1/charts/nginx-ingress). | [Documentation](https://docs.nginx.com/nginx-ingress-controller/). [Examples](https://docs.nginx.com/nginx-ingress-controller/configuration/configuration-examples/). |\n| Edge/Nightly | For testing and experimenting | Use the edge or nightly images from [DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/), [GitHub Container](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress), [Amazon ECR Public Gallery](https://gallery.ecr.aws/nginx/nginx-ingress) or [Quay.io](https://quay.io/repository/nginx/nginx-ingress) or [build your own image](https://docs.nginx.com/nginx-ingress-controller/install/build/). | [Build your own image](https://docs.nginx.com/nginx-ingress-controller/install/build/). | [Manifests](https://github.com/nginx/kubernetes-ingress/tree/main/deployments). [Helm chart](https://github.com/nginx/kubernetes-ingress/tree/main/charts/nginx-ingress). | [Documentation](https://docs.nginx.com/nginx-ingress-controller). [Examples](https://github.com/nginx/kubernetes-ingress/tree/main/examples). |\n\n## SBOM (Software Bill of Materials)\n\nWe generate SBOMs for the binaries and the Docker images.\n\n### Binaries\n\nThe SBOMs for the binaries are available in the releases page. The SBOMs are generated using\n[syft](https://github.com/anchore/syft) and are available in SPDX format.\n\n### Docker Images\n\nThe SBOMs for the Docker images are available in the [DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/), [GitHub\nContainer](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress), [Amazon ECR Public\nGallery](https://gallery.ecr.aws/nginx/nginx-ingress) or [Quay.io](https://quay.io/repository/nginx/nginx-ingress)\nrepositories. The SBOMs are generated using [syft](https://github.com/anchore/syft) and stored as an attestation in the\nimage manifest.\n\nFor example to retrieve the SBOM for `linux/amd64` from Docker Hub and analyze it using\n[grype](https://github.com/anchore/grype) you can run the following command:\n\n```console\ndocker buildx imagetools inspect nginx/nginx-ingress:edge --format '{{ json (index .SBOM \"linux/amd64\").SPDX }}' | grype\n```\n\n## Contacts\n\nWe’d like to hear your feedback! If you have any suggestions or experience issues with our Ingress Controller, please\ncreate an issue or send a pull request on GitHub.\n\n## Contributing\n\nIf you'd like to contribute to the project, please read our [Contributing guide](CONTRIBUTING.md).\n\n## Support\n\nFor NGINX Plus customers NGINX Ingress Controller (when used with NGINX Plus) is covered by the support contract.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnginx%2Fkubernetes-ingress","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnginx%2Fkubernetes-ingress","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnginx%2Fkubernetes-ingress/lists"}