Self-Hosting the Apollo Router
How to deploy the router on your own infrastructure
Apollo Router is a graph runtime that you can deploy in your own infrastructure.
For each version of the Apollo Router, Apollo provides:
Kubernetes
Apollo GraphOS Operator
Apollo recommends the Apollo GraphOS Operator. The Operator provides declarative Kubernetes resources to manage routers, supergraphs, graph schemas, and subgraphs. It simplifies complex multi-service architectures.
The Operator supports workflow patterns based on your infrastructure:
Single-cluster setups for simpler deployments
Multi-cluster and hybrid configurations for distributed services
Deploy-only patterns for existing CI/CD workflows
Helm
Helm is a package manager for Kubernetes. Apollo provides a Helm chart with each release of Apollo Router in the GitHub Container Registry. Since router v0.14.0, Apollo has released each router Helm chart as an Open Container Initiative (OCI) image in oci://ghcr.io/apollographql/helm-charts/router.
Follow our Kubernetes quickstart to deploy the router with a Helm chart.
Docker
Apollo Runtime Container (Recommended)
Apollo provides the Apollo Runtime Container, which bundles all that's required to run the Apollo Runtime in one place. This includes the Apollo Router and the Apollo MCP Server.
You can download the images from:
Docker Hub (recommended)
For more information on deploying using your container environment:
Router only container
This image is recommended only for Kubernetes-based deployments, and is used by the Helm chart. For more information on deploying using your container environment:
Local binary
Running the Apollo Router directly from its binary speeds up local development and enables embedded use cases where containers are unavailable.
Follow the quickstart to run a router binary.