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

Docker image doesn't work on ARM #3094

Closed
krystofrezac opened this issue May 4, 2024 · 11 comments · Fixed by #3183 or #3203
Closed

Docker image doesn't work on ARM #3094

krystofrezac opened this issue May 4, 2024 · 11 comments · Fixed by #3183 or #3203
Labels
bug Something isn't working

Comments

@krystofrezac
Copy link
Contributor

krystofrezac commented May 4, 2024

I am trying to use the official docker image but I am getting this error when pulling

docker pull ghcr.io/gleam-lang/gleam:v1.1.0-erlang-alpine

v1.1.0-erlang-alpine: Pulling from gleam-lang/gleam
no matching manifest for linux/arm64/v8 in the manifest list entries

I am getting the same result on my M1 Macbook and on my ARM Linux server.

Weirdly the older versions (from v1.0.0) work. So I assume that something changed in the build process.
And if you look at the releases in web ui, they look different. The older ones have Manifest info at the bottom and the new ones have a weird value unknown/unknown under OS tab.
v1.0.0
v1.1.0

I tried overriding the platform with docker flag --platform=linux/amd64 but that failed later during the build.

@krystofrezac krystofrezac added the bug Something isn't working label May 4, 2024
@krystofrezac
Copy link
Contributor Author

So i tried the platform flag again and it's working. I probably did something wrong before. It seems that everything is related to this issue docker/build-push-action#820. But nothing is blocking me anymore so I am gonna close this issue. Sorry for the spam.

@lpil lpil reopened this May 5, 2024
@lpil
Copy link
Member

lpil commented May 5, 2024

Have we lost something that indicates what the platform is?

@krystofrezac
Copy link
Contributor Author

Sorry, I don't understand the question. Do you mean the platform from which I tried it or that we lost something in the build process?

@lpil
Copy link
Member

lpil commented May 7, 2024

I'm not very familiar with how arch works in docker so this may be a silly question. You said there was something in a manifest with older versions that is now absent from the current ones. Is that something that would help if it was put back?

@krystofrezac
Copy link
Contributor Author

krystofrezac commented May 7, 2024

I guess so, based on the error message I am getting. But my knowledge in this topic is also not very deep.

Perhaps it would help to rerun the publish job. Assuming the bug was fixed in build-push-action it would publish "fixed" images. But I'm not sure you can do that without breaking something.

Btw does it work on your machine? I asked my colleague (also with MacBook m1) and he's getting the same error.

@lpil
Copy link
Member

lpil commented May 7, 2024

I do, but I would expect it to fail as we don't have an arm64 image. I don't understand why it worked previously.

@krystofrezac
Copy link
Contributor Author

That might be it. When I run the 1.0.0 it runs via emulation. But it's still weird that the new one fails during pull but it doesn't matter that much now.

Do you have plans for adding arm64 image? Can I somehow help with it?

Screenshot 2024-05-13 at 9 04 27

@lpil
Copy link
Member

lpil commented May 13, 2024

As this previously worked and our images have not changed I believe this may be a problem with the upstream Erlang images that we use as a base.

@Acepie
Copy link
Contributor

Acepie commented May 22, 2024

@lpil
Copy link
Member

lpil commented May 23, 2024

What do we need to do to resolve this so the architecture is picked up appropriately?

Do you have plans for adding arm64 image? Can I somehow help with it?

It would be good to have but isn't something I have time to work on.

@krystofrezac
Copy link
Contributor Author

I am not sure yet. I still suspect that the build-push-action produces an incorrect manifest but I want to run some tests to be sure. Hopefully, I will have time to look into it next week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
3 participants