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 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:

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.

Feedback

Edit on GitHub

Ask Community