diff --git a/.circleci/config.yml b/.circleci/config.yml index c09d662e031..8a2871e648c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -486,16 +486,17 @@ jobs: name: Docker build command: | ROUTER_TAG=ghcr.io/apollographql/router - # Build debug image - docker build --build-arg ROUTER_RELEASE=${VERSION} -f dockerfiles/Dockerfile.router -t ${ROUTER_TAG}:${VERSION}-debug . - # Build release image - docker build --build-arg ROUTER_RELEASE=${VERSION} -f dockerfiles/Dockerfile.router -t ${ROUTER_TAG}:${VERSION} . + # Create a multi-arch builder which works properly under qemu + docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + docker context create buildx-build + docker buildx create --driver docker-container --use buildx-build + docker buildx inspect --bootstrap # Note: GH Token owned by apollo-bot2, no expire echo ${GITHUB_OCI_TOKEN} | docker login ghcr.io -u apollo-bot2 --password-stdin - # Push debug image - docker push ${ROUTER_TAG}:${VERSION}-debug - # Push release image - docker push ${ROUTER_TAG}:${VERSION} + # Build and push debug image + docker buildx build --platform linux/amd64,linux/arm64 --push --build-arg ROUTER_RELEASE=${VERSION} -f dockerfiles/Dockerfile.router -t ${ROUTER_TAG}:${VERSION}-debug . + # Build and push release image + docker buildx build --platform linux/amd64,linux/arm64 --push --build-arg ROUTER_RELEASE=${VERSION} -f dockerfiles/Dockerfile.router -t ${ROUTER_TAG}:${VERSION} . - run: name: Helm build command: | diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index f8b89474ea3..62868a2d42f 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -27,6 +27,12 @@ By [@USERNAME](https://github.com/USERNAME) in https://github.com/apollographql/ ## ❗ BREAKING ❗ ## 🚀 Features +### Provide multi-arch (amd64/arm64) Docker images for the Router ([Issue #1932](https://github.com/apollographql/router/pull/2138)) + +From the next release, our Docker images will be multi-arch. + +By [@garypen](https://github.com/garypen) in https://github.com/apollographql/router/pull/2138 + ### Add a supergraph configmap option to the helm chart ([PR #2119](https://github.com/apollographql/router/pull/2119)) Adds the capability to create a configmap containing your supergraph schema. Here's an example of how you could make use of this from your values.yaml and with the `helm` install command.