You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker镜像推送至Artifact Registry遇400未授权错误求助

解决Google Artifact Registry推送400 Unauthorized错误

针对你推送镜像时提示not authenticated: No valid credential was supplied的问题,结合你的操作记录和config.json配置,给你几个针对性的排查和解决步骤:

1. 确认当前gcloud活跃账号正确

有时候登录多个账号后,gcloud默认使用的账号可能不是你配置权限的所有者账号,执行以下命令检查:

gcloud config get-value account

如果输出不是目标账号,用gcloud config set account <你的所有者账号>切换。

2. 解决Docker凭据存储与gcloud credHelper的冲突

你的config.json里同时配置了credsStore: desktop和credHelpers,这两者可能互相干扰,导致Docker无法正确调用gcloud获取凭据:

  • 先备份当前的~/.docker/config.json文件
  • 打开config.json,将"credsStore": "desktop"这一行注释或删除
  • 保存后,重新执行一次Docker配置命令:
gcloud auth configure-docker me-west1-docker.pkg.dev

3. 验证认证有效性

执行以下命令手动测试登录,确认凭据是否正常:

gcloud auth print-access-token | docker login -u oauth2accesstoken --password-stdin me-west1-docker.pkg.dev

如果提示Login Succeeded,说明认证凭据没问题,此时再尝试推送镜像。

另外,也可以检查gcloud凭据助手是否能正常列出条目:

docker-credential-gcloud list

输出中应该能看到me-west1-docker.pkg.dev的相关记录。

4. 切换Docker上下文测试

你的当前Docker上下文是desktop-linux,可以尝试切换到默认上下文排除干扰:

docker context use default

切换完成后重新执行推送操作。

5. 确认Artifact Registry仓库已创建

虽然错误提示是认证问题,但如果目标区域的仓库尚未创建,也可能触发类似错误。执行以下命令检查仓库是否存在:

gcloud artifacts repositories list --location=me-west1

如果没有找到目标仓库,先创建仓库再推送:

gcloud artifacts repositories create <仓库名> --repository-format=docker --location=me-west1

内容的提问来源于stack exchange,提问作者noor soreti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 14:47:09