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

create docker images for armv7 #596

Merged
merged 1 commit into from
Jan 14, 2024
Merged

Conversation

snpz
Copy link
Contributor

@snpz snpz commented Jan 11, 2024

When by #595 pushing images to dockerhub is working again, this fixes #591 and creates an additional docker image for architecture linux/arm/v7.

@@ -123,7 +123,7 @@ jobs:
uses: docker/build-push-action@v5
with:
context: .
platforms: linux/amd64,linux/arm64
platforms: linux/amd64,linux/arm64,linux/arm/v7
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know this is outside the scope of your interest but will this also support most 32-bit Raspberry Pis? I believe that only the early ones were v6: https://raspberrypi.stackexchange.com/a/139499

@snpz
Copy link
Contributor Author

snpz commented Jan 12, 2024

I read a bit more and you are right. Older Raspberrys would not be supported, the newer ones using arm64v8 would because linux/arm64/v8 gets treated like linux/arm64.

I tried adding it in my private repo but unfortunately building fails with Error: buildx failed with: ERROR: failed to solve: eclipse-temurin:11-jre: no match for platform in manifest: not found because the base image does not support armv6.

It could be made a requirement for solving #568 if it is important to you.

@snpz snpz marked this pull request as ready for review January 12, 2024 14:34
@gaul gaul merged commit 671a8f5 into gaul:master Jan 14, 2024
3 checks passed
@gaul
Copy link
Owner

gaul commented Jan 14, 2024

Thank you for your contribution @snpz!

@gaul
Copy link
Owner

gaul commented Jan 14, 2024

As expected this does not work on a Raspberry Pi 4 with 32-bit userland:

pi@raspberrypi:~ $ uname -a
Linux raspberrypi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023 aarch64 GNU/Linux
pi@raspberrypi:~ $ podman run andrewgaul/s3proxy
{"msg":"exec container process `/opt/s3proxy/run-docker-container.sh`: Exec format error","level":"error","time":"2024-01-14T23:11:59.000167429Z"}

Unless you are interested in investigating a new base image let's just wait for someone who is affected by lack of support to address this.

@snpz
Copy link
Contributor Author

snpz commented Jan 15, 2024

@gaul
Not quite sure what to make of your output. Aarch64 is another term for those 64-bit armv8 cpus, right?
What kind of architecture would be needed in that situation?

I did some investigation already and it seems everybody has dropped 32-bit Support in newer image versions.

The one that is currently used dropped 32-bit arm completely beginning with version 21 (https://adoptium.net/de/supported-platforms/), Version 17 still has docker images for armv7, but not for v6 (the older Pis).

I did also come across:
Libera runtime container - no arm support at all
OpenJDK deprecated their docker images (they mention some alternatives but they also have no arm images)
Azul Zulu no 32-bit arm support

Maybe the best solution is to use a slim version of an os as base and installing java through the Dockerfile. Still does not clear up which java version to use, but one would not depend on other organizations to provide images supporting (older) architectures while the JRE itself would support them. I'm totally unexperienced with this though and won't be of much help.

@snpz snpz deleted the create-arm-v7-docker-image branch January 15, 2024 17:23
@gaul
Copy link
Owner

gaul commented Jan 18, 2024

@snpz Thanks for investigating. Sorry I mean let's not worry about ARMv6 support for now. If someone is more motivated then they can do this work.

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

Successfully merging this pull request may close these issues.

support 32-bit arm on dockerhub?
2 participants