求助:无法从GitHub容器注册表(GHCR)拉取镜像的问题
解决GHCR镜像拉取提示"denied: denied"的问题
以下是针对该问题的排查和解决步骤:
重新验证GHCR登录状态
先执行登出命令清除旧的认证信息:docker logout ghcr.io再重新登录GHCR,登录时使用GitHub用户名,密码需填写个人访问令牌(PAT),注意令牌必须勾选
read:packages权限(私有镜像还需额外勾选repo权限)。检查镜像权限与归属
- 公开镜像:确认目标镜像在GitHub Packages的设置中,可见性为「公开」,未被限制为组织内部访问
- 私有镜像:确认你的GitHub账号是镜像所属组织/仓库的成员,且被授予了镜像读取权限(比如组织层面的
Packages (read)权限)
排查网络与代理干扰
- 关闭正在运行的代理工具,直接尝试拉取操作,避免代理拦截认证请求或导致身份信息传递失败
- 用
nslookup ghcr.io验证本地DNS是否能正常解析GHCR域名,排除DNS污染问题
检查Docker配置文件
打开Windows下的Docker配置文件C:\Users\<你的用户名>\.docker\config.json,查看ghcr.io相关的认证条目是否存在异常。若有错误或无效条目,可删除该文件后重新登录GHCR。确认GitHub服务状态
核实GitHub Packages服务当前是否正常运行,排除平台临时故障导致的访问问题。
内容的提问来源于stack exchange,提问作者sarovo
相关产品推荐
相关产品推荐

