Requesting a proper ARM64/aarch64 Docker image (Pi 5 support)
-
Hi,
I'm in the process of migrating from a Raspberry Pi 4 (ARMv7) to a Raspberry Pi 5 (ARMv8/aarch64), but I’ve run into an issue: there is no proper ARMv8/aarch64 image available.
None of the existing images run on the Pi 5 - they all exit immediately with code 139 (segmentation fault), which typically indicates that the binaries inside the image are not compatible with the ARM64/aarch64 architecture used by the Pi 5.
Would it be possible to publish a correct ARMv8/aarch64 (linux/arm64) image?
Building one should be relatively straightforward using docker buildx with multi-arch support. For example, my own Node.js images are built this way:docker buildx build --push \ -t <localrepo>/<project>:<tag> \ --platform=linux/arm64,linux/amd64 \ --file ./apps/<project>/Dockerfile .This produces both the AMD64 and ARM64/v8 variants automatically.
Also, as a side note, it may be best to avoid using Alpine as the base image for the ARM64 build, since musl-based builds often cause compatibility issues and unnecessary headaches. A glibc-based base image (e.g., Debian or Ubuntu) tends to work far more reliably on ARM64, especially for Node.js applications.
@toggledbits - tagging you in case you missed this.
Thanks,
mgvra -
Ahhh... the subtlies of Pi. I have on my Pi4 build system:
root@rpi4-1:~# uname -m aarch64 root@rpi4-1:~# dpkg-architecture -q DEB_HOST_ARCH armhf root@rpi4-1:~#And never noticed. I guess I'll be rebuilding that host.
Image is up for arm64 using Bookworm (slim). I've always done builds directly on target hosts; this one was built on x86_64 cross-platform, so I'm eager to hear if it works for you. I can't run it on that Pi4 in its current condition.







