Containerizing the Apollo Router
Run Apollo Router images in containers
Apollo provides container images of the Apollo Router. By containerizing the router, you can run it in a cluster and leverage the portability, scalability, and high availability benefits of containerization. Containers can also simplify and speed up local development.
The Apollo Router source code and all its distributions are made available under the Elastic License v2.0 (ELv2) license.
Apollo provides container images of the Apollo Router on GitHub in its container repository. The router images are based on debian:bullseye-slim, which is designed to provide constrained, secure, and small images.
Each release of the Apollo Router includes both default (production) and debug images. While each image for a release contains the same build, the debug images have helpful debugging utilities installed and run the router under the control of heaptrack.
A router image has the following layout:
/distdirectory containing the router executable and licensing details
dist/configdirectory containing a default configuration file,
/dist/schemadirectory for conveniently mounting a locally defined supergraph schema
The default behavior of a router image is suitable for a basic deployment or development scenario.
For examples of customizing and deploying router images in specific environments, see the guides for: