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

Invalid manifest problem on quay.io releases #409

Closed
MuratUrsavas opened this issue Apr 5, 2023 · 12 comments · Fixed by #412
Closed

Invalid manifest problem on quay.io releases #409

MuratUrsavas opened this issue Apr 5, 2023 · 12 comments · Fixed by #412

Comments

@MuratUrsavas
Copy link

MuratUrsavas commented Apr 5, 2023

Hi,

We're using Helium's official Docker repo for our base images and doing multi-architecture deployments (amd64 and arm64). Therefore current releases are perfect fit for us. But we can't pin our images to a tag directly as newly built image doesn't contain the correct architecture base image and gives error about architecture mismatch. Hence we have to pin base images with their specific architecture SHA and obviously this creates problems with multi architecture deployments.

image

My hunch says these two unknown entities could be the issue, but of course I'm not sure. What could be done to workaround this issue?

@madninja
Copy link
Member

madninja commented Apr 5, 2023

@MuratUrsavas could you post the exact error you are getting back?

@JayKickliter
Copy link
Contributor

Are you using docker buildx?

@shawaj
Copy link
Contributor

shawaj commented Apr 5, 2023

Are you using docker buildx?

Yes we are

@shawaj
Copy link
Contributor

shawaj commented Apr 5, 2023

Are you using docker buildx?

The two ghost architectures seem to be causing issues

@madninja
Copy link
Member

madninja commented Apr 5, 2023

an actual error message would be helpful

@MuratUrsavas
Copy link
Author

@madninja Here's the error container is throwing at start:

standard_init_linux.go:219: exec user process caused: exec format error

This happens with architecture mismatch.

@madninja
Copy link
Member

madninja commented Apr 6, 2023

@madninja Here's the error container is throwing at start:

standard_init_linux.go:219: exec user process caused: exec format error

This happens with architecture mismatch.

thanks for the report.. LongAP pointed out there appear to be two additional manifests in the docker image that not all docker systems are apparently able to deal with. We'll get this fixed.. cc @JayKickliter

@JayKickliter
Copy link
Contributor

I'm working on a fix. Thanks for the info.

@JayKickliter
Copy link
Contributor

Canyon try the most recent test-image? I got rid of the problematic manifests.

@madninja
Copy link
Member

madninja commented Apr 6, 2023

Fixed with #412

@shawaj
Copy link
Contributor

shawaj commented Apr 8, 2023

Working well for us now.

Thanks for the quick resolution 😁

@shawaj
Copy link
Contributor

shawaj commented Apr 8, 2023

Just FYI you can also solve this by using a platform tag in GitHub actions docker build (if building a new container based on the helium one)...

      - name: Build and push
        id: docker_build
        uses: docker/build-push-action@v3
        with:
          push: true
          platforms: linux/arm64

This then correctly pulls the image.

See here for reference: https://github.com/NebraLtd/hm-gatewayrs/blob/6881bf6e472e5239065487c4be72af71ba5f35d0/.github/workflows/compile-docker.yml#L51

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 a pull request may close this issue.

4 participants