Docker Hub官方网站已从https://registry.hub.docker.com移至https://hub.docker.com/。
如果我尝试docker pull
来自网址的docker pull registry.hub.docker.com/busybox
图像:registry.hub.docker.com/busybox: this image was pulled from a legacy registry.
Important: This registry version will not be supported in future versions of docker.
,则会显示:
docker pull registry.hub.docker.com/busybox
但如果我使用curl -k https://registry.hub.docker.com/v1/repositories/busybox/tags
。
它无法拉动图像。
使用 if ($unitWeight != 0)
{
$saleableUnits = ($sumQty/$unitWeight);
$unitCost = ($sumCost/$saleableUnits);
}
答案 0 :(得分:48)
官方图片的注册表路径(名称中没有斜杠)为library/<image>
。试试这个:
docker pull registry.hub.docker.com/library/busybox
答案 1 :(得分:7)
您可以使用docker info
获取当前的注册表URL:
...
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
...
这也是您可以用来运行自托管注册表的URL:
docker run -d -p 5000:5000 --name registry -e REGISTRY_PROXY_REMOTEURL=https://index.docker.io registry:2
Grep并立即使用:
$ echo $(docker info | grep -oP "(?<=Registry: ).*")
https://index.docker.io/v1/
答案 2 :(得分:5)
对于那些尝试使用“将容器映像部署到此VM实例”来创建Google Cloud实例的用户。选项,则正确的网址格式为
docker.io/<dockerimagename>:version
上面registry.hub.docker.com/library/<dockerimagename>
的建议对我不起作用。
我终于找到了解决方案here(在我的情况下,我试图运行docker.io/tensorflow/serving:latest)
答案 3 :(得分:0)
在创建dockerhub kubernetes机密时,我在搜索dockerhub仓库URL时碰到了这篇文章。想通id共享URL成功使用,希望可以。
答案 4 :(得分:0)
对于那些希望在使用fabric8 maven插件时明确声明要从dockerhub中拉出的用户,请添加一个新属性:<docker.pull.registry>registry.hub.docker.com/library</docker.pull.registry>
我到达此页面是为了解决在使用fabric8构建Docker映像时从我的AWS ECR注册表中提取问题。
答案 5 :(得分:-1)
它只是docker pull busybox
,您使用的是docker
客户端的最新版本吗?我认为他们停止支持低于1.5的客户。
顺便说一句,卷曲对我有用:
$ curl -k https://registry.hub.docker.com/v1/repositories/busybox/tags
[{"layer": "fc0db02f", "name": "latest"}, {"layer": "fc0db02f", "name": "1"}, {"layer": "a6dbc8d6", "name": "1-ubuntu"}, {"layer": "a6dbc8d6", "name": "1.21-ubuntu"}, {"layer": "a6dbc8d6", "name": "1.21.0-ubuntu"}, {"layer": "d7057cb0", "name": "1.23"}, {"layer": "d7057cb0", "name": "1.23.2"}, {"layer": "fc0db02f", "name": "1.24"}, {"layer": "3d5bcd78", "name": "1.24.0"}, {"layer": "fc0db02f", "name": "1.24.1"}, {"layer": "1c677c87", "name": "buildroot-2013.08.1"}, {"layer": "0f864637", "name": "buildroot-2014.02"}, {"layer": "a6dbc8d6", "name": "ubuntu"}, {"layer": "ff8f955d", "name": "ubuntu-12.04"}, {"layer": "633fcd11", "name": "ubuntu-14.04"}]
如果你嗅到标题,你会得到一个HTTP 405(不允许使用方法)。我认为这可能与Docker已弃用Registry API。
的事实有关答案 6 :(得分:-1)
只需使用
docker pull <username>/<imagename>
这可以解决问题。 根据您的情况,使用
docker pull busybox