我对 Google Cloud 完全陌生。我正在尝试将 Docker 映像推送到 Google Cloud Registry。我已执行以下步骤:
- 已安装 Google Cloud SDK。
- 下载了我的即时通讯账户的 JSON 密钥文件
使用以下命令设置身份验证:
google-cloud-sdk/bin/gcloud auth activate-service-account --key-file <path_to_json_file>
执行以下命令进行登录:
docker login -u _json_key --password-stdin https://asia.gcr.io < path_to_json_file
现在,当我尝试将图像推送到注册表时,使用以下命令:
docker login -u _json_key --password-stdin https://asia.gcr.io <path_to_json_file>
我的 SDK shell 出现错误:
token exchange failed : Access denied.
我是否遗漏了什么?
答案1
你检查过官方指南如何推/拉?
您为何尝试登录?您不是在尝试推送图像吗?
例如,如果您尝试推送 nginx,命令将如下所示:
$ gcloud auth configure-docker activate-service-account --key-file <path_to_json_file>
$ docker tag simple-nginx eu.gcr.io/PROJECT_ID/simple-nginx
$ docker push eu.gcr.io/PROJECT_ID/simple-nginx
请记住,您需要输入您的项目 ID 和您想要的区域(我猜在我们的例子中是 asia.gcr)