imagehttpdocker

Protocol for "docker pull" command


I am not sure what protocol does the "docker pull" or the "docker push " command use. When I try to access an image from a remote repository using the following convention

"docker pull http://my-repo/image-name:tag"

It fails with

 http://my-repo/image-name:tag is not a valid repository/tag

But the following command runs with no issues

"docker pull my-repo/image-name:tag"

I have a requirement that I need the "http://"prefix in the repo-name. How can this be achieved?


Solution

  • Usage: docker pull [OPTIONS] NAME[:TAG] | [REGISTRY_HOST[:REGISTRY_PORT]/]NAME[:TAG]

    According to this, docker uses https by default, unless your private repo allows otherwise.

    In the same docs you'll find

    A registry path is similar to a URL, but does not contain a protocol specifier (https://).

    Explicitly prefixing http:// on your docker pull command is not a valid syntax.