How to pull version of docker file from hub? - docker

Why doesn't the following pull centos version 6?
docker pull centos:v6
Tag v6 not found in repository docker.io/library/centos
or this:
docker pull centos6
Error: image library/centos6:latest not found

How about this? From here https://hub.docker.com/_/centos/
docker pull centos:centos6
Or
docker pull centos:6
The format is
<container_name>:tag
Without a tag, it'll pull latest. All the code_blocks on Docker Hub represent tags.

Related

Docker Registry: Newly tagged image can be found, but not found when pulled

Using :latest image as a base, I have created a new image tagged with :v1.1.0-fermium. After tagging, the newly tagged image :v1.1.0-fermium appears within registry listing of docker images, including :latest
Problem: The :latest image can be pulled from registry, but not the newly tagged :v1.1.0-fermium image, not found registry.
Question: Is there a step I am missing when tagging a docker image in order to be found when pulling from a docker registry?
$ docker image tag docker.foo.com/bar-build:latest docker.foo.com/bar-build:v1.1.0-fermium
$ docker image ls docker.foo.com/bar-build
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.foo.com/bar-build latest 35bfeb2c6323 5 hours ago 5.03GB
docker.foo.com/bar-build v1.1.0-fermium 35bfeb2c6323 5 hours ago 5.03GB
$ docker pull docker.foo.com/bar-build:latest
latest: Pulling from bar-build
$ docker pull docker.foo.com/bar-build:v1.1.0-fermium
Error response from daemon: manifest for docker.foo.com/bar-build:v1.1.0-fermium not found: manifest unknown: The named manifest is not known to the registry.
Kindly Push the docker image into hub.docker.com for publishing it and then you can pull the image.

How to change docker repository for masakari?

hi i am install masakari using kolla-ansible when it try to pull container it throw error `The repository not exist or request denied i check docker hub the image not present there , is there setting in kolla to download the docker image with other name which is present on docker hub.
Global.yml
#kolla_base_distro: "centos"
#kolla_install_type: "binary"
#openstack_release: "ussuri"
Based on your global.yml it should work when you run the following commands to download and rename your prefered docker-images:
docker pull odivlad/masakari:api
docker pull odivlad/masakari:engine
docker pull odivlad/masakari:rc8
docker tag odivlad/masakari:api kolla/centos-binary-masakari-api:ussuri
docker tag odivlad/masakari:engine kolla/centos-binary-masakari-engine:ussuri
docker tag odivlad/masakari:rc8 kolla/centos-binary-masakari-rc8:ussuri
After this the images should match the correct name and should be found by the kolla-ansible run.
I have never used masakari by myself und can not check this in my own kolla-ansible test setup. So it is only a theoretical solution for your problem.

What does :2 mean when running Docker registry?

In every tutorial I've found regarding Docker registry there is a command like this:
docker run -d -p 5000:5000 --name registry registry:2
Tag 2 is used here. Why? I've tried registry without the tag and it also worked.
I think it has something to do with different API (?) of Docker registry but I am not sure.
Yes, you are correct! the tag 2 represents Docker Registry v2 Implementation which is also Docker Registry HTTP API V2. which solves several problems that were in V1 and introduce new features as described in the following links:
Docker Registry HTTP API V2
More about Registry 2.0
By removing 2 then docker goes to a default tag called latest which currently points to the following tags 2.7.1, 2.7, 2.
So when Docker Inc. releases Registry V3, the latest tag will point to V3 and in case you need V2 in specific you have to add it to your command explicitly. You can check the available tags for the registry image
You are right about the API. From github.com/docker/distribution:
Distribution
The Docker toolset to pack, ship, store, and deliver content.
This repository's main product is the Docker Registry 2.0 implementation for storing and distributing Docker images. It supersedes the docker/docker-registry project with a new API design, focused around security and performance.
and:
registry
An implementation of the Docker Registry HTTP API V2 for use with docker 1.6+.
Why both work?
When you docker pull registry you actually pull registry:latest and it has the same digest as registry:2. Demo:
$ docker pull registry
Using default tag: latest
latest: Pulling from library/registry
169185f82c45: Already exists
046e2d030894: Pull complete
188836fddeeb: Pull complete
832744537747: Pull complete
7ceea07e80be: Pull complete
Digest: sha256:870474507964d8e7d8c3b53bcfa738e3356d2747a42adad26d0d81ef4479eb1b
Status: Downloaded newer image for registry:latest
$ docker pull registry:2
2: Pulling from library/registry
Digest: sha256:870474507964d8e7d8c3b53bcfa738e3356d2747a42adad26d0d81ef4479eb1b
Status: Downloaded newer image for registry:2

Error pulling my image from docker hub

I’ve created a docker image and pushed it to docker hub as public repo.
When I try to do pull it, I get an error:
docker pull myname/book-store
Error response from daemon: manifest for myname/book-store:latest not found
I see this image in the docker hub
I’ve pushed it to docker hub:
docker tag book-store:1.0.1 myuser/book-store:1.0.0
docker push myuser/book-store:1.0.0
Any idea what could be missing here ?
You are not specifying a tag when pulling your image, so docker tries to pull :latest, which isn't there.
docker pull myname/book-store:1.0.0
Should work OK
There's a good post about :latest here

Find what tags will be downloaded with `docker pull ubuntu`

When I run in docker 1.2 docker pull ubuntu a lot of tags are downloaded. (In the version 1.3 this was changed — to download all the tags I need to run docker pull ubuntu --all-tags
I know that I can see the tags what are going to be downloaded on the Docker Hub — https://registry.hub.docker.com/_/ubuntu/tags/manage/
Is there a way to find out the list of tags that are to be downloaded from docker console utilities?
Docker pull without an explicit tag will pull the "latest" tag. If you call pull with "--all-tags" flag it should then pull all the tags for that image.
Documentation for docker pull is here:
https://docs.docker.com/reference/commandline/cli/#pull

Resources