can't pull docker images from nexus proxy - docker

The nexus is configured at 8444 for internal hosting and the 7001 for the external proxy. I am able to pull images from 8444. But can't pull anything from the internet. The nexus is pointing to https://registry-1.docker.io in the proxy settings. Any suggestions?
$ docker pull x.com:8444/hello-world
Using default tag: latest
latest: Pulling from hello-world
c04b14da8d14: Pull complete
Digest: sha256:a18ed77532f6d6781500db650194e0f9396ba5f05f8b50d4046b294ae5f83aa4
Status: Downloaded newer image for x.com:8444/hello-world:latest
$ docker pull x.com:7001/node
Using default tag: latest
Error response from daemon: unknown: unknown
(there is no error log showing in nexus for this pull)

I found the answer myself. In the configuration, need to use
"Use Docker Hub"
option in the Proxy->Docker index.
I used "Use proxy registry (specified above)" which doesn't work.

Related

Docker pull from artifactory

Docker pull resulting the following error, we are trying to pull the image from artifactory (docker repo)
% docker pull artifactory.myorg.com/docker/axyu1325/kargo:0.3.0
Error response from daemon:
Missing or empty Content-Length header
Upgrade artifactory to 7.0.0 or later, or downgrade your docker client.

Access denied when pulling Docker image from a repository I own

I built a Docker image that I pushed to Docker Hub under my account and removed locally after. But when I try to pull it, it throws the following error:
Error response from daemon: pull access denied for mightyspaj/dockerfile-assignment-1, repository does not exist or may require 'docker login'
I'm logged into the same account that owns the repository for this image and can perform other tasks (such as pushing) perfectly fine. The repository also definitely exists on Docker Hub, yet it fails when I try to pull it.
I've tried the following things:
Logging out of my account and back in again
Renaming config.json and regenerating it
Running an isolated Docker container with docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock:ro docker sh, then logging into my account and attempting to pull the image
Deleting and recreating the repository
All of these things still produce the same error. I'm baffled.
To note, both my client and engine versions are 17.12.0-ce. My OS is Ubuntu 17.10 (64-bit).
Console output
docker login
-> % docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: mightyspaj
Password:
Login Succeeded
docker tag
-> % docker tag dockerfile-assignment-1:latest mightyspaj/dockerfile-assignment-1
docker push
-> % docker push mightyspaj/dockerfile-assignment-1
The push refers to repository [docker.io/mightyspaj/dockerfile-assignment-1]
8427a8e6a29f: Pushed
655a921743e8: Pushed
8aa44edb7524: Pushed
60f1a2dc4cd8: Mounted from library/node
9185fe936b87: Mounted from library/node
e53f74215d12: Mounted from library/node
latest: digest: sha256:6c68220ba84f13d0229ef4458f22369410bb98764b908a75be0849c3003de160 size: 1582
docker image rm
-> % docker image rm mightyspaj/dockerfile-assignment-1
Untagged: mightyspaj/dockerfile-assignment-1:latest
Untagged: mightyspaj/dockerfile-assignment-1#sha256:6c68220ba84f13d0229ef4458f22369410bb98764b908a75be0849c3003de160
docker image pull
-> % docker image pull mightyspaj/dockerfile-assignment-1
Using default tag: latest
Error response from daemon: pull access denied for mightyspaj/dockerfile-assignment-1, repository does not exist or may require 'docker login'
I could fix the same issue only when I made the repository public. Make sure the repository is public then this is the set of instructions I followed in command line:
Once logout from docker hub and login again.
1- docker logout
2- docker login --username=YOURUSERNAME
Enter password when asked
3- docker pull repositoryName"/"imageName[:tag]
if "tag" is not included the default value will be "latest".
Then check the images by docker images command to check if its been pulled.
After pulling is done I made the repository private again.
This solution is only valid on private docker repositories!!
First try to login on your private repo e.g:
docker login dockerrepo.example.com
Then
If you build new image with dockerfile based on image in your private repository then you must prefix your base image with private repository url:
FROM PRIVATE_REPO_URL + IMAGE_INFO
sample:
PRIVATE_REPO_URL --> dockerrepo.example.com
BASE_IMAGE --> samples/java/jdk:1.6
Your dockerfile look like this:
FROM dockerrepo.example.com/samples/java/jdk:1.6

Error while running hello-world

$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
5b0f327be733: Pulling fs layer
C:\Program Files\Docker Toolbox\docker.exe: error pulling image configuration: G
et https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha
256/05/05a3bd381fc2470695a35f230afefd7bf978b566253199c4ae5cc96fafa29b37/data?Exp
ires=1505372640&Signature=LO9Nt0XkgRBYWohS5zpTJFLWKzikKcF0579euysBEXpTGOT8CsWO5p
JBRUxpp-0HtcNlB7bF4RjbGprTjcUUIgkFs8pE5uY9z6AoBADfE~XyFYOul9alK-uYulne52EnvLkNfh
NQO~xR4Y-whwop79R9tiWZuZl8ueTzas2GFYE_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q: x509: c
ertificate signed by unknown authority.
See 'C:\Program Files\Docker Toolbox\docker.exe run --help'.
Any advice on how to proceed?
Your docker engine is trying to contact the registry and having some sort of CDN, firewall, or corporate proxy issue trying to have a proper "conversation" with the registry. It's pretty similar to being on hotel or public WiFi that has a "walled garden" that hasn't been processed through yet.
Unless you have a persistent network issue, it could be temporal, and as someone else suggested a docker pull hello-world:latest may work. If you have a corporate proxy, you may have to make sure the Docker toolbox/Docker for Windows configuration has this proxy configured properly to have network access.

Docker cloud repository push: access to the requested resource is not authorized on Fedora 23

I've just come over from tutum and and am trying to deploy to a docker cloud repository. I've created the repository and have tagged an existing image:
docker tag deploy foo/rtb
When I attempt to push my tagged image up like so:
docker push foo/rtb
I get this:
The push refers to a repository [docker.io/foo/rtb] (len: 0)
18118bb6b8ef: Preparing
unauthorized: access to the requested resource is not authorized
The repository exists and I've logged in to docker. Is there something I'm missing?
Interestingly enough, if I try to delete the image I get an error like this:
Error response from daemon: conflict: unable to delete 18118bb6b8ef
(must be forced) - image is referenced in one or more repositories
Error: failed to remove images: [18118bb6b8ef]
I had been using docker 1.9.1. That's the version in the Fedora 23 repo.
The kind folks at docker tech support recommended I upgrade to the latest 1.10.3
Upgrading then doing
docker logout
followed by
docker login
fixed everything up.
Did you tag your image ?
docker build --tag docker.io/<yourdockerhubname>/<appname> .
docker build --tag docker.io/moskalr/rtb .
docker push docker.io/<yourdockerhubname>/<appname>
docker push docker.io/moskalr/rtb
the push should respond with something which mentions the dockerhub image name

Unable to push image to docker hub

I have built a docker image and have committed the changes, and am attempting to push the image to my public docker hub account.
When attempting to push the image to the docker hub registry it seems to try utilise my hub username as a private server address.
What i have done done so far is run a fedora base image, make my changes and then commit the changed using docker commit dd09de55abc9 username/fedora-23-httpd
When i do this and check the image using docker images i get the output:
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
/username/fedora-23-httpd latest 0b9b4d0b820e 21 seconds ago 468.5 MB
Then when running docker push username/fedora-23-httpd i get the message:
The push refers to a repository [username/fedora-23-httpd] (len: 1)
unable to ping registry endpoint https://username/v0/
v2 ping attempt failed with error: Get https://username/v2/: dial tcp: lookup username: No address associated with hostname
v1 ping attempt failed with error: Get https://username/v1/_ping: dial tcp: lookup username: No address associated with hostname
From other tutorials I have read my commands appear to be correct, but the output of the images command shows the repository name with a / at the start.
Can any one see what i'm doing wrong here?
removed default docker version from fedora 23 install - reinstalled using
wget -qO- https://get.docker.com/ | sh

Resources