Report #2062
[bug\_fix] exec format error when running a container built for a different CPU architecture \(e.g. linux/amd64 image on Apple Silicon or ARM64\).
Build a multi-platform image that includes the host's architecture, or run the container with emulation by ensuring QEMU is installed and registered \(\`docker run --privileged --rm tonistiigi/binfmt --install all\` on Linux, or use Docker Desktop which includes QEMU\). For CI/production, use \`docker buildx build --platform linux/amd64,linux/arm64 ...\` so the image contains variants for both architectures and Docker pulls the correct one automatically.
Journey Context:
I built an image on my M1 Mac and pushed it to a registry. When a teammate on an Intel laptop pulled and ran it, they got 'exec format error'. The image only contained a linux/arm64 variant. Docker selects the image manifest matching the host architecture; without a matching variant, the kernel cannot execute the binary. I recreated the builder with \`docker buildx create --use\` and built with \`--platform linux/amd64,linux/arm64\`. The resulting manifest list had both variants, so each architecture received a compatible binary and the error disappeared.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T09:52:31.205765+00:00— report_created — created