Registry: improve manifest information and show architecture
Problem to solve
show the supported architectures of docker (manifest multi-)images
Further details
Since Gitlab-ce 11.2.0 uploading of multi-arch-images to the gitlab-registry works using docker manifest
command https://gitlab.com/gitlab-org/gitlab-ce/issues/40197#note_94416667
With it I created a manifest file for Ubuntu xenial (16.04). The Uploaded manifest is shown in the registry window
There is no indication if the image is a manifest, or a simple docker image. And if it is a manifest which architectures are supported by the manifest
Using docker manifest inspect
the supported architectures can be listed
$ docker manifest inspect registry-test.example.com/containers/external/ubuntu:xenial
{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"manifests": [
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1357,
"digest": "sha256:3ee33b392155d17728e0c19f86889c38c43ff1a37c675b0fd7e9a3941fc6eb92",
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1357,
"digest": "sha256:216fc503c96215b3e4ef9a61c37d2a6684d996494a89efc78cba4a286200a083",
"platform": {
"architecture": "arm",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1357,
"digest": "sha256:5e72a08643764d9fcf6632d6083926d6a5372d7f2ad91aec1e25000ef99c0718",
"platform": {
"architecture": "arm64",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 1357,
"digest": "sha256:306fe5244084b105753c64923e24a7f76f544d189637a348c103287b883da1bb",
"platform": {
"architecture": "386",
"os": "linux"
}
}
]
}
Proposal
- Add an indication if a registry image is a simple image or a manifest
- Add information which architecture the image/manifest supports
What does success look like, and how can we measure that?
-
it is possible to have a distinction if an entry in the registry tab is a simple image or a multi-arch manifest -
it is possible to see directly on the registry website which architectures a image/manifest supports
Links / references
Edited by NeroBurner