2 ms·
> And they do not support native Arm or multi-platform container builds What's the issue with https://docs.docker.com/build/building/multi-platform/ https://do
by eatonphil 4y ago
> And they do not support native Arm or multi-platform container builds
What's the issue with https://docs.docker.com/build/building/multi-platform/ https://docs.docker.com/build/building/multi-platform/? I only just learned about this today but I've already got it building cross-platform images correctly in Github Actions.
- jacobwg 4y agoHey, we support that exact thing, the `depot` CLI wraps buildx so we support the same `--platform` flag. The difference between Depot and doing it directly in GitHub Actions is the "native CPU" part - on GitHub Actions, the Arm builds will run with emulation using QEMU. It works, but it's often at least 10x slower than it could be if the build was running on native Arm CPUs. Builds that should take a few minutes can take hour(s). For multi-platform, if you want to keep things fast, you need a simultaneous connection to both an Intel and an Arm machine, and the two work in concert to build the multi-platform image. There are workarounds with emulation, or pushing individual images separately and merging the result after they're in a registry. But if you just want to `build --platform linux/amd64,linux64` and it be fast, we handle all the orchestration for that.
- ellisv 4y agoHow do you deal with so many base images only supporting a single architecture? We’d love to build multi-arch containers but don’t want to maintain all of our base images either.
- eatonphil 4y agoWhat images support only a single architecture? The ones I use: alpine, ubuntu work fine. If you're already building images (because that's what we're talking about) what difference does it make at which base image you start?