我正在按照这个链接创建我的第一个docker映像,它成功了,现在我试图从这个链接将这个映像推到我的docker存储库中。但是每当我试图将这个映像推入存储库时,我就会得到这种类型的错误。
denied: requested access to the resource is denied
注:我已成功登录docker
我正在按照这个链接创建我的第一个docker映像,它成功了,现在我试图从这个链接将这个映像推到我的docker存储库中。但是每当我试图将这个映像推入存储库时,我就会得到这种类型的错误。
denied: requested access to the resource is denied
注:我已成功登录docker
当前回答
在我把“docker login https://hub.docker.com”改成“docker login docker”之后,它就工作了。并提供用户名和密码。
然后执行以下命令:
docker tag local-image:tagname new-repo:tagname
docker push new-repo:tagname
注意:"new-repo"将包含"Docker ID + Repo名称"
这里,在运行以下命令之前,我已经在Docker Hub中创建了“ubuntu”repo。
例子:
docker tag alok/ubuntu:latest aloktiwari2007/ubuntu:latest
docker push aloktiwari2007/ubuntu:latest
其他回答
Docker对私有存储库的数量也有限制。如果您正在通过从本地机器推入创建私有存储库,则它将创建存储库,但不能再向其推入或从其拉出任何其他内容,并且您将得到“对资源的请求访问被拒绝”错误。
从命令提示符登录Docker无法工作。当我尝试推送时,我一直得到“对资源的请求访问被拒绝”。
在登录到docker for windows应用程序本身后,docker push工作得很好。希望这能帮助到一些人。
还需要注意的重要一点是,在标记图像时,首先使用命名空间标记,然后使用存储库/ mydevrepo标记。这让我在使用Docker文档时感到困惑。之后我使用:
docker login
然后我使用“tagged name”来推送我的图像。
docker push {namespace}/mydevrepo
我得到了同样的错误。不幸的是,这个错误是由于在docker push之前使用sudo造成的。此外,您可能需要从dockerhub中删除存储库,因为您可以拥有的repo数量是有限的。并且,请尝试docker注销,然后docker登录
您可能需要在docker push之前将docker repo切换为private。
感谢Dean Wu提供的答案和ses的评论,在推送之前,请记得注销,然后从命令行登录到您的docker hub帐户
# you may need log out first `docker logout` ref. https://stackoverflow.com/a/53835882/248616
docker login
根据文件:
You need to include the namespace for Docker Hub to associate it with your account.
The namespace is the same as your Docker Hub account name.
You need to rename the image to YOUR_DOCKERHUB_NAME/docker-whale.
所以,这意味着你必须在推送之前标记你的图像:
docker tag firstimage YOUR_DOCKERHUB_NAME/firstimage
然后你就可以推它了。
docker push YOUR_DOCKERHUB_NAME/firstimage