Add documentation and new options for building the Docker images.

Review Request #13316 — Created Oct. 8, 2023 and submitted — Latest diff uploaded

Information

Review Board
release-6.x

Reviewers

We recently added support for multi-architecture Docker images using
docker buildx. This requires a bit of additional setup to build one or
more buildkit environments. While not hard (especially if running on
macOS, which can build arm64 and amd64 images), it's non-obvious how to
build these if you haven't done it before.

For more advanced setups where multiple hosts are involved in the build
process, it's especially non-obvious, and not even the docker buildx
instructions cover this well. And just using docker buildx means that
there's more complexity involved in testing and using these images.

The top of the Dockerfile now has instructions on setting up buildx
for both single-host and multi-host builds.

The build.py script has been updated to better support this as well.
It's been given a --platform option for specifying one or more
platforms, and a --load option for taking a single built platform
and loading it into the local Docker for testing.

Followed these instructions and built a multi-host, multi-architecture
build environment, and built new images.

Used --load to get a built image into my local environment.

Commits

Files