Unable to pull docker image – Repository not found

I’m unable to pull docker images in my environment. I think it’s blocked by company firewall, but I’m not sure why It gets layer info and later It prints that repository is not found.

sudo docker pull hello-world
latest: Pulling from hello-world
50a54e1f9180: Pulling fs layer
7a5a2d73abce: Pulling fs layer
Pulling repository hello-world
Repository not found

Docker version: (I cannot upgrade to newest docker on RHEL 6.9)

  • process exit code 127 while running a bash script by java service in docker
  • Forward local SSH credentials to Docker container inside Vagrant VM
  • Docker run error: could not create session key: too many links
  • How to run aiohttp with gunicorn in docker container?
  • Docker volumes binding: container to host
  • Can I bind a port while building a docker image?
  • Docker version 1.7.1, build 786b29d/1.7.1
    

    Could somebody explain me which protocols (https only?) are used during docker image pulling phase and what addresses are contacted (“https://registry-1.docker.io/v2” only?) ?

  • Installing libraries in ubuntu image using Docker
  • “Value cannot be null. Parameter name: userName” error when installing MSSQL 2014 Express in Docker
  • Docker - container with multiple images
  • need for Node.js docker image that run the app when start
  • Docker volume mounting shows empty directory with a linux mounted directory
  • Error response from daemon: getsockopt: connection refused
  • 2 Solutions collect form web for “Unable to pull docker image – Repository not found”

    Docker images can consist of multiple layers. By default, the Docker daemon will pull three layers of an image at a time but will pull less in case an image has lesser layers. Also, if no tag is provided, Docker Engine uses the :latest tag as a default. Above is a basic log of your pull request indicating docker trying to pull layers of the image but failing, may be due to firewall restrictions or older docker version.

    Docker uses the https:// protocol to communicate with a registry,
    unless the registry is allowed to be accessed over an insecure
    connection.

    Not sure what all addresses it tries to connect to pull an image.

    Problem was that firewall was blocking connections during pulling images.
    Docker registry uses CDN so more URLs need to be allowed and not only registry URL.

    I requested to allow the following URLs on company firewall and it is working now.

    dseasb33srnrn.cloudfront.net
    auth.docker.io
    elb-registry.us-east-1.aws.dckr.io.
    us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com
    registry-1.docker.io
    registry-origin.docker.io
    index.docker.io
    elb-io.us-east-1.aws.dckr.io
    us-east-1-elbio-rm5bon1qaeo4-623296237.us-east-1.elb.amazonaws.com
    

    Docker log file (/var/log/docker) help me to identify root problem.
    There were the following errors:

    level=error msg="Error from V2 registry: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/78/78445dd45222097f5f8d5a16e48dc19c4ca162dcdb80010ab6f1ccfc7e2c0fa3/data?Expires=1493033299&Signature=DiEmffSxF1F9z-SRoGyX3NwzfeQY3BhE2Du3aPb1qy9VglXyn1mus7Xy9Y~DQnwaQ9IIN71FboK5lOAiN1Qj-x662qhioi72CJ-v02fiMHqC03FDb0l4LyULquU8GaalW3uZG4hdfuSqOBQ1qo9HEcxhMyQGqOqpfPUKjUlHqm8_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q: read tcp 52.85.173.110:443: connection reset by peer"
    

    The list of URLs which needs to be allowed I found here:
    https://forums.docker.com/t/list-of-docker-hub-mirror-sites-to-configure-proxy-whitelist/20845/2

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.