firefly icon indicating copy to clipboard operation
firefly copied to clipboard

Use docker buildx for multiarch builds

Open nguyer opened this issue 2 years ago • 0 comments

This PR switches to the docker buildx command for building images for multiple CPU architectures. Currently, the build jobs are set up to build linux/amd64 and linux/arm64. This is set in the Makefile. Because building a Docker image for a non-native CPU architecture is very slow (because it's emulated), mutiarch builds are not the default when running make docker. Instead a new command, make docker-multiarch has been added, which is used by our GitHub Actions.

NOTE: From my testing docker buildx seems to return status 0, despite the fact that it may have failed to push to a repository. This can result in false positives for our GitHub Actions. I looked into this and it seems to be an open issue with buildx https://github.com/docker/buildx/issues/732

nguyer avatar Jun 22 '22 14:06 nguyer