Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ARM docker image does not work on arm32v7 (raspberry pi 3) #2

Open
pabloromeo opened this issue May 31, 2020 · 5 comments
Open

ARM docker image does not work on arm32v7 (raspberry pi 3) #2

pabloromeo opened this issue May 31, 2020 · 5 comments

Comments

@pabloromeo
Copy link

The docker image tagged as arm appears to be only 64bit, and doesn't run on Raspberry pi 3. Errors out with the standard arch mismatch error:

standard_init_linux.go:211: exec user process caused "exec format error"
@zaherg
Copy link

zaherg commented Aug 28, 2020

@pabloromeo the latest tags should now work with 32/64bit os.

image

@pabloromeo
Copy link
Author

Unfortunately that did not work, and still got the same error.
I had to fork the repo, and using dockerhub hooks and a custom Dockerfile for ARM build it specifically including QEMU.
Aside from QEMU the other big different is the BASE image used in the new dockerfile: arm32v7/python:3-alpine
It would fail with the standard python base image.

In case it's useful to anyone, the fork is:
https://github.com/pabloromeo/apprise-microservice

And the docker image is available at:
https://hub.docker.com/repository/docker/pabloromeo/apprise-microservice
With the latest-arm tag

@zaherg
Copy link

zaherg commented Nov 6, 2020

how about you send a PR so that the author can look at it and fix his own too

@pabloromeo
Copy link
Author

Well, I didn't do that because it's not really an issue in the code itself. It's more related to how the build pipelines and architectures are set up.
That's why I showed the example of how I did it using dockerhub and building on AMD64 with QEMU, but the author here may want something more efficient building directly on ARM without using QEMU and a different CI platform and may not want to have a separate Dockerfile per platform.
The code is fine, all i did was change the docker base image for python using the ARM one, and then build including QEMU since I don't have an ARM build agent. Here the situation may be quite different and a PR can't cover that.

I just did a quick and dirty implementation solely focusing on ARM 32 bit, to run on my raspberry pi. If these images start working on 32 bit ARM then i'll kill my repo since it won't be useful anymore.

@djmaze
Copy link
Owner

djmaze commented Jan 15, 2024

@pabloromeo Veerrry late response, but if you are still interested, this might work now. (Different build process / Docker fixed their armhf base images..)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants