【发布时间】:2019-01-09 19:56:49
【问题描述】:
我有一个公司内部的 docker 存储库。
当我被添加到它时,我收到了格式为:
https://docker.mycompany.com/repositories/myusername/myrepository
好的。很棒。
我创建了一个 Dockerfile 并构建了 docker 映像。
docker build -t business-services:latest .
一切正常。
我做一个
泊坞窗图片
我明白了:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
business-services latest aaaaaaaaaaaa 3 hours ago 120MB
openjdk 8-jdk-alpine bbbbbbbbbbbb 2 weeks ago 103MB
太棒了!
现在我正在尝试将“business-services:latest”推送到:
https://docker.mycompany.com/repositories/myusername/myrepository
...
这就是事情出错的地方。
首先,在你问之前,是的,我已经登录了。
docker login https://docker.mycompany.com/repositories/myusername/myrepository
Username: myusername
Password:
Login Succeeded
当我尝试“标记”它然后推送它时,问题就出现了。
看起来标签名称是某种混合关注点......在远程 docker 存储库和 image:release 之间。 :( 嘘。
如果我这样标记它:
docker tag business-services:latest docker.mycompany.com/repositories/myuserna/business-services:latest
我做 docker images 我看到了这个:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
business-services latest aaaaaaaaaaaa 3 hours ago 120MB
docker.mycompany.com/myusername/myrepository/business-services latest aaaaaaaaaaaa 3 hours ago 120MB
openjdk 8-jdk-alpine 04060a9dfc39 2 weeks ago 103MB
然后尝试像这样推送它
docker push docker.mycompany.com/myusername/myrepository/business-services
The push refers to repository [docker.mycompany.com/myusername/myrepository/business-services]
denied: requested access to the resource is denied
所以它混淆了存储库名称
我也是这样做的,只是为了确保
docker push docker.mycompany.com/myusername/myrepository/business-services:latest
The push refers to repository [docker.mycompany.com/myusername/myrepository/business-services]
denied: requested access to the resource is denied
同样的错误:(
然后我尝试了这个:
docker tag business-services:latest docker.mycompany.com/business-services:latest
docker push docker.mycompany.com/business-services:latest
The push refers to repository [docker.mycompany.com/business-services]
denied: requested access to the resource is denied
这不起作用,因为我没有在值中提供 myuser/myrepository。
呸呸呸
远程 url 和容器名称的这种“混合”让我抓狂。
在尝试找出字符串 voodoo 时,我收到了这个错误:
The push refers to a repository
An image does not exist locally with the tag:
推送到类似 url 名称的魔法酱是什么
docker.mycompany.com/myusername/myrepository
谁想出了将目标存储库与图像名称 voodoo 混合的方法?
或者我完全不知道如何将某些东西推送到公司内部的 docker 存储库
研究我在下面找到的东西:
https://docs.docker.com/engine/reference/commandline/push/#examples
现在,使用图像 ID 将图像推送到注册表。在这个 例如,注册表位于名为 registry-host 的主机上并正在侦听 端口 5000。为此,请使用主机名或 IP 地址标记图像, 和注册表的端口:
$ docker tag rhel-httpd registry-host:5000/myadmin/rhel-httpd
$ docker push registry-host:5000/myadmin/rhel-httpd
是的,我对此进行了研究,因此我的旅程走到了这一步。
码头工人--版本 Docker 版本 18.09.0,构建 4d60db4
谢谢!!
追加
我遵循了这些说明:
http://karlcode.owtelse.com/blog/2017/01/25/push-a-docker-image-to-personal-repository/
在“推送到您的私有存储库”区域下。
同样的错误。找不到网址
docker tag business-services docker.mycompany.com/myusername/myrepository/business-services:latest
docker push docker.mycompany.com/myusername/myrepository/business-services:latest
The push refers to repository [docker.mycompany.com/myusername/myrepository/business-services]
denied: requested access to the resource is denied
【问题讨论】:
-
我会问谁给你那个存储库 URL 如何使用它;它不遵循任何特定的标准。
标签: docker