从Docker Hub拉取返回“未找到”是因为使用较旧的Docker版本。

huangapple go评论63阅读模式
英文:

Pull from docker hub returns not found with older docker version

问题

我有一个使用旧版本的Docker 17.06.1-ce的服务器,我注意到一些通过新版本的Docker和docker buildx构建并推送的镜像无法拉取,出现如下错误:

来自守护程序的错误响应:找不到 wodby/mariadb:10.3-3.24.0 的清单

具有此标签的镜像可以在Docker Hub上找到,使用更新的Docker可以正常拉取。

登录到Docker Hub不影响任何内容。我在工作和不工作的服务器上使用相同的架构 linux/amd64

这是否是已知行为?是否有解决此问题的方法?我猜原因可能是旧的Docker Hub API 已被弃用。

更新:根据 https://www.docker.com/blog/registry-v1-api-deprecation/ ,Docker 17.03+ 兼容v2注册表API,应该正常工作。

英文:

I have a server with the old version of docker 17.06.1-ce and I've noticed that some images (built and pushed via new docker and docker buildx) cannot be pulled with the error, e.g.:

Error response from daemon: manifest for wodby/mariadb:10.3-3.24.0 not found

The image with this tag can be found on docker hub and docker pull works fine with newer docker.

The login to docker hub doesn't affect anything. I use the same architecture linux/amd64 on servers where it works and doesn't work.

Is this a known behaviour? Is there a way workaround for this? I guess the reason could be the deprecation of the old docker hub api.

UPD: according to https://www.docker.com/blog/registry-v1-api-deprecation/ docker 17.03+ are compatible with v2 registry API and should be working fine

答案1

得分: 1

似乎问题是由于buildx版本引起的。我使用GitHub Actions (docker/setup-buildx-action) 来构建镜像,其中包括无法拉取的镜像。GitHub Actions 最近将构建操作系统从Ubuntu 20.04 LTS升级到了22.04 LTS,并随之将buildx从0.9.1升级到0.10.0,从那时起,拉取操作停止工作。很可能是由于SLSA出处认证引起的 https://github.com/docker/buildx/releases/tag/v0.10.0

我通过将Docker升级至至少18.06+来解决了拉取问题。

参考链接 https://forums.docker.com/t/docker-17-06-pull-returns-not-found-for-existing-image/134524/3

英文:

It seems the issued caused by buildx version. I use GitHub Actions (docker/setup-buildx-action) to build images include the one that cannot be pulled. GitHub Actions has recently upgraded their build OS from Ubuntu 20.04 LTS to 22.04 LTS and with it they upgraded buildx from 0.9.1 to 0.10.0 and since then pull has stopped working. Most likely caused by SLSA provenance attestation https://github.com/docker/buildx/releases/tag/v0.10.0

I've resolved the pull issue by upgrading docker to at least 18.06+.

Ref https://forums.docker.com/t/docker-17-06-pull-returns-not-found-for-existing-image/134524/3

huangapple
  • 本文由 发表于 2023年2月8日 18:46:00
  • 转载请务必保留本文链接:https://go.coder-hub.com/75384648.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定