gpt4 book ai didi

tags - "tag latest not found"on docker pull 与私有(private)注册表

转载 作者:IT老高 更新时间:2023-10-28 21:19:20 26 4
gpt4 key购买 nike

我无法将图像推送到私有(private)注册表并获取:

在存储库中找不到标签最新

我正在使用 Docker 提供的默认注册表容器:

# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry latest 7e2db37c6564 8 days ago 411.6 MB
janos/wheezy latest 900e813f1fd9 11 months ago 218.6 MB

作为测试,假设我想要一个本地版本的 wheezy:

# docker tag janos/wheezy staging-docker.mysite.nl/myself/wheezy
# docker push staging-docker.mysite.nl/myself/wheezy
The push refers to a repository [staging-docker.mysite.nl/myself/wheezy] (len: 1)
Sending image list
Pushing repository staging-docker.mysite.nl/myself/wheezy (1 tags)
7af801e4faa1: Pushing [==================================================>] 226.3 MB/226.3 MB
2014/11/21 16:06:38

图像似乎在那里:

# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry latest 7e2db37c6564 8 days ago 411.6 MB
staging-docker.mysite.nl/myself/wheezy latest 900e813f1fd9 11 months ago 218.6 MB
janos/wheezy latest 900e813f1fd9 11 months ago 218.6 MB

我可以在本地启动它:

# docker run -i -t staging-docker.mysite.nl/myself/wheezy /bin/bash
root@6b5fafe61d88:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin selinux srv sys tmp usr var
root@6b5fafe61d88:/# exit

但是当尝试从另一台服务器运行或拉取它时,我得到“未找到最新的标签”

# docker pull staging-docker.mysite.nl/myself/wheezy
Pulling repository staging-docker.mysite.nl/myself/wheezy
2014/11/21 16:08:15 Tag latest not found in repository staging-docker.mysite.nl/myself/wheezy

明确添加“最新”没有帮助。同样的错误。

我可以看到调用到达注册表,所以我没有无意中使用另一个:

172.17.42.1 - - [21/Nov/2014:15:08:15 +0000] "GET /v1/_ping HTTP/1.0" 200 1439 "-" "Go 1.1 package http"
172.17.42.1 - - [21/Nov/2014:15:08:15 +0000] "GET /v1/_ping HTTP/1.0" 200 1439 "-" "Go 1.1 package http"
21/Nov/2014:15:08:15 +0000 DEBUG: args = {'namespace': u'myself', 'repository': u'wheezy'}
172.17.42.1 - - [21/Nov/2014:15:08:15 +0000] "GET /v1/repositories/myself/wheezy/images HTTP/1.0" 200 164 "-" "docker/1.3.1 go/go1.3.3 git-commit/4e9bbfa kernel/3.16.0-0.bpo.2-amd64 os/linux arch/amd64"
21/Nov/2014:15:08:15 +0000 DEBUG: args = {'namespace': u'myself', 'repository': u'wheezy'}
21/Nov/2014:15:08:15 +0000 DEBUG: [get_tags] namespace=myself; repository=wheezy
172.17.42.1 - - [21/Nov/2014:15:08:15 +0000] "GET /v1/repositories/myself/wheezy/tags HTTP/1.0" 200 2 "-" "docker/1.3.1 go/go1.3.3 git-commit/4e9bbfa kernel/3.16.0-0.bpo.2-amd64 os/linux arch/amd64"

而且手动检查图片的标签时,确实是空的:

# curl -k https://staging-docker.mysite.nl/v1/repositories/myself/wheezy/tags
{}

问题一:怎么一开始是空的,因为Docker总是用最新的...

问题2:如果事情搞砸了,最新的标签确实没了,我怎么还能在本地启动呢?

两台服务器上的 Docker 版本相同:

# docker version 
Client version: 1.3.1
Client API version: 1.15
Go version (client): go1.3.3
Git commit (client): 4e9bbfa
OS/Arch (client): linux/amd64
Server version: 1.3.1
Server API version: 1.15
Go version (server): go1.3.3
Git commit (server): 4e9bbfa

最佳答案

我注意到 Docker 客户端失败消息并不总是反射(reflect)根本原因。当 docker 客户端未通过服务器进行身份验证时,或者 SSL 握手由于某种原因失败时,我已经看到这种情况发生。鉴于您没有使用 --insecure-registry,听起来像是后者。

关于tags - "tag latest not found"on docker pull 与私有(private)注册表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27064688/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com