Fix Docker Error: "exec format error" (Apple Silicon M1/M2/M3 vs x86_64)
Occurs when a container image built for one CPU architecture (e.g. ARM64 on Apple Silicon) is executed on an incompatible host CPU architecture (e.g. AMD64/x86_64 on AWS/GCP/Linux), or vice-versa.
exec /app/entrypoint: exec format error
Quick Fix Checklist
- Specify target platform during build: docker build --platform linux/amd64 -t my-app .
- Specify platform during docker run: docker run --platform linux/amd64 -p 8080:8080 my-app
- In Dockerfile base image: FROM --platform=linux/amd64 node:18-alpine
- Use Docker Buildx for production multi-platform images