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
While manually creating a manifest, it errors out multiple repositories currently not supported
#1147
Comments
Can you try making them different tags in the same repository? i.e. |
@ciaranmcnulty I was specifically trying to keep image name different to avoid confusion. |
Not sure why the restriction is there TBH, was just trying to interpret the message My understanding of multi-arch is that the manifest is pushed along with the layers for each (single-arch) image, but no tags are pushed that point directly to the images. |
This feature is being added in #1137 Registry scopes blobs by repo. They need to be uploaded again if the repo changes. If you use same repo and different tags then everything should work today. |
As a suggestion maybe build and push the single-arch images into the main repo with tags that reflect the CI job number (eg |
@tonistiigi @ciaranmcnulty Is it possible to delete the single arch tags as the multi-arch manifest is already pointing to these one's? |
Feature added in #1137. |
I am trying to build multi-arch image but do not want to do this via qemu as the build become fairly slow if I use qemu.
Since this image building is happening inside github action, I am not able to use buildx builder and connect vm's for different architectures.
So, this is what I ended up doing:
docker buildx imagetools create -t ghcr.io/puneet-work/images/gh-img:1.11.0 --append ghcr.io/puneet-work/images/gh-img-arm64:1.11.0 --append ghcr.io/puneet-work/images/gh-img-amd64:1.11.0
But this errors out with error
error: multiple repositories currently not supported, found map[ghcr.io/puneet-work/images/gh-img:{} ghcr.io/puneet-work/images/gh-img-amd64:{} ghcr.io/puneet-work/images/gh-img-arm64:{}]
What would be the best way to achieve this. How does docker buildx build internally does it? And how can replicate the same manually?
The text was updated successfully, but these errors were encountered: