我正在按照这个链接创建我的第一个docker映像,它成功了,现在我试图从这个链接将这个映像推到我的docker存储库中。但是每当我试图将这个映像推入存储库时,我就会得到这种类型的错误。
denied: requested access to the resource is denied
注:我已成功登录docker
我正在按照这个链接创建我的第一个docker映像,它成功了,现在我试图从这个链接将这个映像推到我的docker存储库中。但是每当我试图将这个映像推入存储库时,我就会得到这种类型的错误。
denied: requested access to the resource is denied
注:我已成功登录docker
当前回答
当我在标记图像时使用docker中心名时,它为我工作。(这里,xyz是一个docker中心名)
# Login to docker hub account
docker login
# tag image
docker tag nginx xyz/nginx
# push image
docker push xyz/nginx
其他回答
我的问题是在我的图像名称中使用无效字符(额外的/):
myusername/something/image
无效的映像名称。/上的用户名都尝试dangillmor something-image。希望这能帮助到一些人。
在我的例子中,sudo -E处理此消息失败。解决方案是提供访问do docker而不使用sudo(创建一个组docker,将(Jenkins)用户添加到组中,将组设置在/var/run/docker.sock上)。现在docker push不需要sudo了,而且可以工作。
还需要注意的重要一点是,在标记图像时,首先使用命名空间标记,然后使用存储库/ mydevrepo标记。这让我在使用Docker文档时感到困惑。之后我使用:
docker login
然后我使用“tagged name”来推送我的图像。
docker push {namespace}/mydevrepo
对于那些试图将映像推送到自己的Nexus存储库管理器的人,请执行以下操作:
1)登录到您的Nexus存储库管理器(端口8443与特定的Docker主机存储库相关联)
sudo docker login xxx.mydomain.com:8443
2)标记图像与您的NEXUS服务器IP/DNS
sudo docker tag myimage:latest xxx.mydomain.com:8443/myimage:1.0.0
3)推送图片
sudo docker push xxx.mydomain.com:8443/myimage:1.0.0
Docker登录参数在~/. Docker /config。Json应该正确设置(这是在登录后自动完成)
1)不传递SERVER参数登录:
$ echo "<password>" | docker login -u foo --password-stdin
成功登录后,在~/.docker/config中会出现如下结果。Json和push image成功。
***
"https://index.docker.io/v1/": {
"auth": "YWNhcm***"
}
***
2)登录时传递SERVER参数index.docker.io
$ echo "<password>" | docker login index.docker.io -u foo --password-stdin
成功登录后,在~/.docker/config中会出现如下结果。Json和push image失败。
***
"index.docker.io": {
"auth": "YWNhcm***"
}
***