I would like to ask why it is needed to specify both name and digest when pulling docker image?
docker pull ubuntu@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2
Isn't it enough, just to pass the digest, or the digest is not unique enough in the context of the whole docker repository?
For example like that:
docker pull sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2
Images are pulled from registries. Image names include the registry, e.g. quay.io/yourgroup/yourimage
pulls from quay.io
server.
But ubuntu
doesn't include the server name, you say?
If there's no server name, it defaults to the Docker Hub, aka docker.io
. So ubuntu
is the same as docker.io/library/ubuntu
.
Thus, you need to have the name so it knows which image registry server to talk to.