DockerHub is not showing all available architectures for some images in the web UI

I am building images across multiple build servers on different architectures and then stitching them together using docker buildx imagetools create. This seems to work and docker buildx imagetools inspect reveals all the architectures exist in in the registry and I can pull them so they’re definitely there.

But when I go look in DockerHub on the website it only shows a single architecture. Sometimes I will push to multiple tags like this docker buildx imagetools create -t tag1 -t tag2 image1 image2 image3 and tag1 will show all the architectures but tag2 only shows one. It’s very confusing because as I said they’re all there and can be pulled and seem to work, it’s just not presented that way in the UI. Repushing the image doesn’t resolve it either.

I haven’T noticed this yet. Do you have a publicn example? If it is a bug, you could report it on GitHub

Yeah nephatrine/alpine-s6 for instance.

These five tags are all created with the same imagetools create command and actually contain 4 different architectures (arm64, armhf, i386, amd64):

nephatrine/alpine-s6:latest - only shows linux/arm64
nephatrine/alpine-s6:3.1.6.2 - shows correctly
nephatrine/alpine-s6:3.1.6 - shows correctly
nephatrine/alpine-s6:3.1 - shows correctly
nephatrine/alpine-s6:3 - only shows linux/arm/v7

I have no idea why some work fine and others do not. The two tags that aren’t showing up properly aren’t even not working in the same way - they show different archs.

I had no such issues when I was using docker manifest create and docker manifest push to push them so maybe the solution is to just go back to doing that, but I feel like both should work and the buildx commands are the way to go moving forward right?

It definitely seems like a bug regardless of how you created the image. I tried this on my Mac with the hub-tool command:

hub-tool tag inspect nephatrine/alpine-s6:latest

It showed

Manifest List:
Name:		docker.io/nephatrine/alpine-s6
MediaType:	application/vnd.docker.distribution.manifest.list.v2+json
Digest:		sha256:d81a673f05b9b0e0b6947b35124cda67dccb1dfe23f479afe3a5efd0692ada4d

Manifests:
Name:		docker.io/nephatrine/alpine-s6@sha256:7a50f1968df0fde73aca6c7be27724f839ca716660b78ba86a0b86c5cfa17550
Mediatype:	application/vnd.docker.distribution.manifest.v2+json
Platform:	linux/amd64

Name:		docker.io/nephatrine/alpine-s6@sha256:795187e1da42bc47304f65527a4ebaeec63eb4719b0cdc056816fb6c979c12ee
Mediatype:	application/vnd.docker.distribution.manifest.v2+json
Platform:	linux/386

Name:		docker.io/nephatrine/alpine-s6@sha256:ad2ffdaa81fc76bfe050d021b75017b05c88928518fe04e3a771be7614f6d189
Mediatype:	application/vnd.docker.distribution.manifest.v2+json
Platform:	linux/arm64

Name:		docker.io/nephatrine/alpine-s6@sha256:9a1d174bfe1414fa4aeab57d239b147e652a5f8752a7bbb10d3d1c890bab99e7
Mediatype:	application/vnd.docker.distribution.manifest.v2+json
Platform:	linux/arm/v7

So as you wrote, the architectures are there but not shown on Docker Hub. In the meantime I also noticed an interesting behavior in the hub-tool

Thanks for the pointer to the dockerhub issues page. I posted here because I didn’t realize that existed. Looks like someone else is having the same issues as me so at least I’m not alone. lol