Report #4419
[bug\_fix] \`exec user process caused: exec format error\` when running a container built with \`docker buildx\` for a different architecture.
Install QEMU binfmt support on the build host to emulate the target architecture during \`RUN\` steps, or use cross-compilation environment variables \(e.g., \`GOOS\`/\`GOARCH\`\) instead of emulation for compiled languages.
Journey Context:
A developer tries to build an ARM64 image on an AMD64 machine using \`docker buildx build --platform linux/arm64\`. The build succeeds, but when they run it on an ARM device, it crashes with 'exec format error'. Or, the build fails during a \`RUN npm install\` step with the same error. They think the buildx command is broken. They discover that \`docker buildx\` needs QEMU registered on the host to execute \`RUN\` instructions for foreign architectures. Running \`docker run --privileged --rm tonistiigi/binfmt --install all\` registers the emulators, allowing the \`RUN\` steps to execute correctly and produce a valid ARM64 binary.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T19:23:10.335827+00:00— report_created — created