Add documentation and new options for building the Docker images.

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

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.

Summary ID
Add documentation and new options for building the Docker images.
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.
753a2f91c3510fe061010b3f58666950991c1ab9
david
  1. Ship It!
  2. 
      
maubin
  1. Ship It!
  2. 
      
chipx86
Review request changed

Status: Closed (submitted)

Change Summary:

Pushed to release-6.x (9ef0a74)
Loading...