无法从 GitHub 容器注册表 (GHCR) 提取映像

问题描述 投票:0回答:2

在过去的两天里,我无法从 GitHub 容器注册表 (GHCR) 中提取任何映像。公共图像和私有图像都会出现此问题。我尝试过使用 CMD 和 Windows 终端,但没有成功。不过,我可以正常从 Docker Hub 拉取镜像。

我使用的命令是这样的:

docker pull ghcr.io/someorg/someimage:sometag

我得到的错误是这样的:

来自守护进程的错误响应:头“https://ghcr.io/v2/someorg/someimage/manifests/sometag”:拒绝:拒绝

只说“拒绝”,没有解释原因。经过大量搜索,我只找到了 GitHub 上的一个问题,上面说这是一个平台问题,已经解决了。

docker github containers docker-image github-container-registry
2个回答
19
投票

由于您尝试提取的图像是公开的,并且您收到该错误,因此可以安全地假设您使用不再存在的访问令牌登录(因为您可能已删除它或它已过期)。

鉴于此,您必须使用以下命令删除

ghcr.io
的登录凭据:

docker logout ghcr.io

然后使用现有访问令牌再次登录或根本不登录。

然后

pull
命令应该可以工作。


2
投票

我在拉取私有包时遇到了类似的错误:

docker pull ghcr.io/user/image-name:latest
Error response from daemon: Head "https://ghcr.io/v2/user/image-name/manifests/latest": unauthorized

登录 ghcr.io

docker login ghcr.io -u username -p accesstoken

将用户名替换为您的 github 用户名,密码(GitHub 个人访问令牌)通过此处 -> 生成新令牌 -> 经典获取。并选择存储库和包权限:

现在

docker pull
将会成功。

© www.soinside.com 2019 - 2024. All rights reserved.