docker push - access not authorized - docker

I am trying to push an image to docker hub.
I created an account "kaffeekaethe" and created a public repository "reservierung".
I build the image "kaffeekaethe/reservierung" (no typos, I double checked that).
Afterwards I logged into docker hub and tried to push the image, but I am alwasy getting the error "access to the requested resource is not authorized". Everyone else who had this problem wasn't logged in prior to the push command, and that was the only solution that I've found. Is there any other reason for this error?

Related

401 error when using docker push to private registry (Heroku Registry)

While following Heroku's docs for how to push a docker image to their registry, I keep running into this error:
> docker push registry.heroku.com/<MY-APP>/web cd
Using default tag: latest
The push refers to repository [registry.heroku.com/<MY-APP>/web]
e0d052f1dc62: Preparing
41ec0e96eb83: Preparing
d081ada49467: Waiting
73c3e7ef7bc6: Waiting
unauthorized: authentication required
I continue to get a Login Succeeded whenever I try to use docker login, so I'm not sure what the issue is.
I tried to debug using the Docker Daemon logs but those weren't helpful.
Turns out I was bitten by what I'd consider to be a bug with the Heroku registry that stems from a debate about how to deny the user properly when they're logged in but try to access a resource that either doesn't exist or isn't theirs so that sensitive info, like the existence of a resource, isn't exposed (check this summary if you're interested).
TL;DR - Heroku shuold be sending a 404 but send a 401 instead - Go make the app via the UI and then try again.

Google Container Registry - unauthorized, struggling to authenticate

Recently got a new Mac, and now I am struggling to push docker containers to GCR - receiving the error:
unauthorized: You don't have the needed permissions to perform this operation, and you
may have invalid credentials. To authenticate your request, follow the steps in:
https://cloud.google.com/container-registry/docs/advanced-authentication
Commands that led to this error:
docker build -t our-node-container ./
docker tag our-node-container gcr.io/our-gcp-project/our-grc-images-directory
docker push gcr.io/our-gcp-project/our-grc-images-directory
Confirming that:
I have a GCP account with billing, have enabled the Container Registry API and installed Cloud SDK, and have Docker installed.
I have authenticated with gcloud auth login, which opened a window where I selected my email address associated with the GCP account. It led to this page.
and afterwards, I ran gcloud config set project our-gcp-project. I have closed my terminal window and attempted to docker push again, but continue to get this unauthorized error. How else can I troubleshoot this in an effort to solve the problem?
As is standard, we solved the issue just moments after posting the question. Rather than deleting the question, I'll post an answer incase anyone runs into same issue.
We simply missed the last step, which was to run gcloud auth configure-docker to update the config file in /home/.docker/config.json

Error while pushing image to docker. Requested access to the resource is denied

I am trying to push an image of my application to dockerhub but i keep getting this error:
requested access to the resource is denied.
I am already logged in with my credentials using docker login. My repository is public. I have tried everything it keeps giving me this error.
docker login
docker tag springmysqldockerswagger:latest vai/spring:myfirstimagepush
docker push vai/spring:myfirstimagepush
Any help would be appreciated.

unable to docker push images in artifactory

I'm having problems pushing images to my docker repo in Artifactory. Pulling the images works as expected, but pushing them gives me an error. I can see the progress bar pushing the image, but somehow it times out w/ a "I/O Timeout"
My setup consists of an Artifactory instance running in my k8 cluster and I have a F5 in front of it for SSL offloading. I followed these instruction for using the repository path method.
On the http settings I've tried using the nginx/http reverse proxy or just using the embedded tomcat. I either the the "I/O timeout" or a "503 Service Unavailable" (when using the embedded).
I know network wise everything is ok, since I can push other items. i.e, files, npm etc... It's a bit frustrating that I'm able to pull but not push. Has anyone seen this before??
Do the docker push command again with artifactory UI open ( Admin -> System logs -> Request log )
You should see a few requests coming in with '/api/docker' in the path. What's the return code and full path shows in request log?
The docker registry push would require docker login. You may need to get credentials for the docker registry so that you push. Say if you have saved password in a file
docker login --username=yourhubusername --email=youremail#company.com
And then try push.

Docker always says unauthorized: authentication required when pushing an image

I am new to Docker, trying to follow the official get started guide.
When I want to login, I type docker login, then I type my login and my password. It outputs "Login Succeeded". But when I want to push the image with docker push drazik/get-started:part1, it outputs "unauthorized: authentication required".
I am absolutely sure that my login/password are good. But there is something weird : I can type whatever I want as username and password, docker login always outputs "login suceeded".
My docker version is "1.13.1, build 27e468e/1.13.1".
Does somebody can figure out what's wrong ? Thank you very much.
Note that the authorization token, generated when you log in, is saved into ~/.docker/config.json, and read from this same file when you push an image.
So, here are the only ways such a situation can happen:
1-
You are using an account on DockerHub with the login name: mylogin (anything but drazik)
You create a local image this way:
docker build -t drazik/get-started:part1 .
You log in Docker this way:
% docker login
Username: mylogin
Password: ********
Then you push the image this way:
% docker push drazik/get-started:part1
The push refers to a repository [docker.io/drazik/get-started:part1]
5bef08742407: Preparing
unauthorized: authentication required
Thus, this means you are not using the account drazik to log in, but another one.
2-
you do not share the same local account to log in, create the image and push the image (for instance, you log in to DockerHub as local user root , you create the image as root, but you push the image as a simple user).
Therefore, the authorization token is saved into ~root/.docker/config.json but docker push tries to read it from ~user/.docker/config.json

Resources