Docker Community Forums

Share and learn in the Docker community.

Docker Buildx | Docker Image for ARMV7 Fails to Start on Raspberry Pi

Issue Type
Docker images created for armv7 using docker buildx fail to start on Raspberry Pi 3B+. The log shows the following error:

standard_init_linux.go:211: exec user process caused “exec format error”

The answers to similar issues suggest that the error appears if the image is not being run on correct architecture. I have verified that my Raspberry Pi is device armv7.

OS Version/build
Build OS: Docker buildx done on Mac OS Catalina [10.15.4 (19E287)]
Target OS: Ubuntu 18.04.2 LTS on Raspberry Pi 3b+

App Version
Docker Engine (MacOS): 19.03.8
Docker Desktop Community (MacOS): 2.3.0.1 (channel: edge)
Docker (Raspberry PI): 19.03.6 (Client-> Experimental false; Server: Experimental true)

Steps to reproduce

  1. Create a docker image for ARMV7 platform. I used the following command:
    docker buildx build github.com/keep-network/keep-core --platform linux/arm/v7 -t keep-raspberry

  2. Push the image to docker hub

  3. Pull the image on Raspberry Pi and run

Expected Result:
The docker image should successfully start

Actual Result:
Image startup fails with the following error:

standard_init_linux.go:211: exec user process caused “exec format error”

FYI, here is the platform architecture information from docker image manifest:

"Descriptor": {
	"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
	"digest": "sha256:1de98218aff4db49240263ac65c0c2ae8dd389ec7b3ef2ff1bba52645175af4e",
	"size": 1577,
	"platform": {
		"architecture": "arm",
		"os": "linux",
		"variant": "v7"
	}
}