{"id":13437821,"url":"https://github.com/emissary-ingress/emissary","last_synced_at":"2026-04-02T14:19:36.235Z","repository":{"id":36991786,"uuid":"86740149","full_name":"emissary-ingress/emissary","owner":"emissary-ingress","description":"open source Kubernetes-native API gateway for microservices built on the Envoy Proxy","archived":false,"fork":false,"pushed_at":"2025-04-04T23:12:25.000Z","size":125022,"stargazers_count":4426,"open_issues_count":501,"forks_count":689,"subscribers_count":80,"default_branch":"master","last_synced_at":"2025-05-05T22:16:11.888Z","etag":null,"topics":["ambassador","api-gateway","api-management","cloud-native","docker","envoy","envoy-proxy","gateway-api","kubernetes","kubernetes-annotations","kubernetes-ingress","microservice"],"latest_commit_sha":null,"homepage":"https://www.getambassador.io","language":"Python","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/emissary-ingress.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-03-30T19:22:52.000Z","updated_at":"2025-04-26T10:51:53.000Z","dependencies_parsed_at":"2023-12-26T06:41:19.795Z","dependency_job_id":"d5ad88ad-c2bc-43a3-8f80-444154196e69","html_url":"https://github.com/emissary-ingress/emissary","commit_stats":{"total_commits":13276,"total_committers":250,"mean_commits":53.104,"dds":0.7545947574570654,"last_synced_commit":"8b343d5989edccd2bc56964475f3182b7e32680e"},"previous_names":["datawire/ambassador"],"tags_count":901,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emissary-ingress%2Femissary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emissary-ingress%2Femissary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emissary-ingress%2Femissary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emissary-ingress%2Femissary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/emissary-ingress","download_url":"https://codeload.github.com/emissary-ingress/emissary/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253968065,"owners_count":21992252,"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":["ambassador","api-gateway","api-management","cloud-native","docker","envoy","envoy-proxy","gateway-api","kubernetes","kubernetes-annotations","kubernetes-ingress","microservice"],"created_at":"2024-07-31T03:01:00.484Z","updated_at":"2026-04-02T14:19:36.174Z","avatar_url":"https://github.com/emissary-ingress.png","language":"Python","funding_links":[],"categories":["Python","HarmonyOS","API Gateways \u0026 Proxies","语音识别与合成_其他","docker","Service Mesh","🚀 DevOps \u0026 Infrastructure"],"sub_categories":["Windows Manager","资源传输下载"],"readme":"Emissary-ingress\n================\n\n\u003c!-- [![Alt Text][image-url]][link-url] --\u003e\n[![Version][badge-version-img]][badge-version-link]\n[![Docker Repository][badge-docker-img]][badge-docker-link]\n[![Join Slack][badge-slack-img]][badge-slack-link]\n[![Core Infrastructure Initiative: Best Practices][badge-cii-img]][badge-cii-link]\n[![Artifact HUB][badge-artifacthub-img]][badge-artifacthub-link]\n\n[badge-version-img]: https://img.shields.io/docker/v/emissaryingress/emissary?sort=semver\n[badge-version-link]: https://github.com/emissary-ingress/emissary/releases\n[badge-docker-img]: https://img.shields.io/docker/pulls/emissaryingress/emissary\n[badge-docker-link]: https://hub.docker.com/r/emissaryingress/emissary\n[badge-slack-img]: https://img.shields.io/badge/slack-join-orange.svg\n[badge-slack-link]: https://communityinviter.com/apps/cloud-native/cncf\n[badge-cii-img]: https://bestpractices.coreinfrastructure.org/projects/1852/badge\n[badge-cii-link]: https://bestpractices.coreinfrastructure.org/projects/1852\n[badge-artifacthub-img]: https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/emissary-ingress\n[badge-artifacthub-link]: https://artifacthub.io/packages/helm/datawire/emissary-ingress\n\n\u003c!-- Links are (mostly) at the end of this document, for legibility. --\u003e\n\n---\n\n## QUICKSTART\n\nLooking to get started as quickly as possible? Check out [the\nQUICKSTART](QUICKSTART.md)!\n\n### Latest Release\n\nThe latest production version of Emissary is **3.10.0**.\n\n**Note well** that there is also an Ambassador Edge Stack 3.10.0, but\n**Emissary 3.10 and Edge Stack 3.10 are not equivalent**. Their codebases have\ndiverged and will continue to do so.\n\n---\n\nEmissary-ingress\n================\n\n[Emissary-ingress](https://www.getambassador.io/docs/open-source) is an\nopen-source, developer-centric, Kubernetes-native API gateway built on [Envoy\nProxy]. Emissary-ingress is a CNCF incubating project (and was formerly known\nas Ambassador API Gateway).\n\n### Design Goals\n\nThe first problem faced by any organization trying to develop cloud-native\napplications is the _ingress problem_: allowing users outside the cluster to\naccess the application running inside the cluster. Emissary is built around\nthe idea that the application developers should be able to solve the ingress\nproblem themselves, without needing to become Kubernetes experts and without\nneeding dedicated operations staff: a self-service, developer-centric workflow\nis necessary to develop at scale.\n\nEmissary is open-source, developer-centric, role-oriented, opinionated, and\nKubernatives-native.\n\n- open-source: Emissary is licensed under the Apache 2 license, permitting use\n  or modification by anyone.\n- developer-centric: Emissary is designed taking the application developer\n  into account first.\n- role-oriented: Emissary's configuration deliberately tries to separate\n  elements to allow separation of concerns between developers and operations.\n- opinionated: Emissary deliberately tries to make easy things easy, even if\n  that comes of the cost of not allowing some uncommon features.\n\n### Features\n\nEmissary supports all the table-stakes features needed for a modern API\ngateway:\n\n* Per-request [load balancing]\n* Support for routing [gRPC], [HTTP/2], [TCP], and [web sockets]\n* Declarative configuration via Kubernetes [custom resources]\n* Fine-grained [authentication] and [authorization]\n* Advanced routing features like [canary releases], [A/B testing], [dynamic routing], and [sticky sessions]\n* Resilience features like [retries], [rate limiting], and [circuit breaking]\n* Observability features including comprehensive [metrics] support using the [Prometheus] stack\n* Easy service mesh integration with [Linkerd], [Istio], [Consul], etc.\n* [Knative serverless integration]\n\nSee the full list of [features](https://www.getambassador.io/docs/emissary) here.\n\n### Branches\n\n(If you are looking at this list on a branch other than `master`, it\nmay be out of date.)\n\n- [`main`](https://github.com/emissary-ingress/emissary/tree/main): Emissary 4 development work\n\n**No further development is planned on any branches listed below.**\n\n- [`master`](https://github.com/emissary-ingress/emissary/tree/master) - **Frozen** at Emissary 3.10.0\n- [`release/v3.10`](https://github.com/emissary-ingress/emissary/tree/release/v3.10) - Emissary-ingress 3.10.0 release branch\n- [`release/v3.9`](https://github.com/emissary-ingress/emissary/tree/release/v3.9)\n  - Emissary-ingress 3.9.1 release branch\n- [`release/v2.5`](https://github.com/emissary-ingress/emissary/tree/release/v2.5) - Emissary-ingress 2.5.1 release branch\n\n**Note well** that there is also an Ambassador Edge Stack 3.10.0, but\n**Emissary 3.10 and Edge Stack 3.10 are not equivalent**. Their codebases have\ndiverged and will continue to do so.\n\n#### Community\n\nEmissary-ingress is a CNCF Incubating project and welcomes any and all\ncontributors.\n\nCheck out the [`Community/`](Community/) directory for information on\nthe way the community is run, including:\n\n - the [`CODE_OF_CONDUCT.md`](Community/CODE_OF_CONDUCT.md)\n - the [`GOVERNANCE.md`](Community/GOVERNANCE.md) structure\n - the list of [`MAINTAINERS.md`](Community/MAINTAINERS.md)\n - the [`MEETING_SCHEDULE.md`](Community/MEETING_SCHEDULE.md) of\n   regular trouble-shooting meetings and contributor meetings\n - how to get [`SUPPORT.md`](Community/SUPPORT.md).\n\nThe best way to join the community is to join the `#emissary-ingress` channel\nin the [CNCF Slack]. This is also the best place for technical information\nabout Emissary's architecture or development.\n\nIf you're interested in contributing, here are some ways:\n* Write a blog post for [our blog](https://blog.getambassador.io)\n* Investigate an [open issue](https://github.com/emissary-ingress/emissary/issues)\n* Add [more tests](https://github.com/emissary-ingress/emissary/tree/main/ambassador/tests)\n\n\u003c!-- Please keep this list sorted. --\u003e\n[CNCF Slack]: https://communityinviter.com/apps/cloud-native/cncf\n[Envoy Proxy]: https://www.envoyproxy.io\n\n\u003c!-- Legacy: clean up these links! --\u003e\n\n[authentication]: https://www.getambassador.io/docs/emissary/latest/topics/running/services/auth-service/\n[canary releases]: https://www.getambassador.io/docs/emissary/latest/topics/using/canary/\n[circuit breaking]: https://www.getambassador.io/docs/emissary/latest/topics/using/circuit-breakers/\n[Consul]: https://www.getambassador.io/docs/emissary/latest/howtos/consul/\n[CRDs]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/\n[Datadog]: https://www.getambassador.io/docs/emissary/latest/topics/running/statistics/#datadog\n[Grafana]: https://www.getambassador.io/docs/emissary/latest/topics/running/statistics/#grafana\n[gRPC and HTTP/2]: https://www.getambassador.io/docs/emissary/latest/howtos/grpc/\n[Istio]: https://www.getambassador.io/docs/emissary/latest/howtos/istio/\n[Knative serverless integration]: https://www.getambassador.io/docs/emissary/latest/howtos/knative/\n[Linkerd]: https://www.getambassador.io/docs/emissary/latest/howtos/linkerd2/\n[load balancing]: https://www.getambassador.io/docs/emissary/latest/topics/running/load-balancer/\n[metrics]: https://www.getambassador.io/docs/emissary/latest/topics/running/statistics/\n[Prometheus]: https://www.getambassador.io/docs/emissary/latest/topics/running/statistics/#prometheus\n[rate limiting]: https://www.getambassador.io/docs/emissary/latest/topics/running/services/rate-limit-service/\n[self-service configuration]: https://www.getambassador.io/docs/emissary/latest/topics/using/mappings/\n[sticky sessions]: https://www.getambassador.io/docs/emissary/latest/topics/running/load-balancer/#sticky-sessions--session-affinity\n[TCP]: https://www.getambassador.io/docs/emissary/latest/topics/using/tcpmappings/\n[TLS]: https://www.getambassador.io/docs/emissary/latest/howtos/tls-termination/\n[web sockets]: https://www.getambassador.io/docs/emissary/latest/topics/using/tcpmappings/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femissary-ingress%2Femissary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Femissary-ingress%2Femissary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femissary-ingress%2Femissary/lists"}