gpt4 book ai didi

google-container-registry - 无法推送到 Google Container Registry - 权限问题

转载 作者:行者123 更新时间:2023-12-03 23:27:54 28 4
gpt4 key购买 nike

我的示例问题是 Vaclav .我已经按照 GCR 快速入门开始了这封信,其中需要创建一个新项目(称为 gcr-project)并复制 Flask(python)应用程序的代码。

构建docker镜像后,我输入了命令:

gcloud auth configure-docker
docker tag quickstart-image gcr.io/gcr-project/quickstart-image:tag1
docker push gcr.io/gcr-project/quickstart-image:tag1

回应是:
unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication

因此,很高兴知道问题是与凭据(我正在为其他项目使用云 SDK OK)还是权限有关。文档 here建议您需要存储管理员权限,但项目已经拥有该权限,请参阅屏幕截图 here

我很感激任何解决此问题的提示,因为我正在寻找使用 GCR,但这个问题对我来说很难。

更新:
我用云 shell 尝试了同样的过程
me@cloudshell:~ (gcr-project-XXXXXX)$ docker push gcr.io/gcr-project/quickstart-image:tag1
The push refers to repository [gcr.io/gcr-project/quickstart-image]
4399528b7213: Preparing
1d10b1eeca74: Preparing
75156020d862: Preparing
c5697656a146: Preparing
2a435270de82: Preparing
c35f70b5c25a: Waiting
28e260baaf1b: Waiting
556c5fb0d91b: Waiting

denied: Token exchange failed for project 'gcr-project'. Please enable Google Container Registry API in Cloud Console at https://console.cloud.google.com/apis/api/containerregistry.googleapis.com/overview?project=gcr-project before performing this operation.
me@cloudshell:~ (gcr-project-XXXXXX)$

这促使我检查 API 和服务仪表板以确认容器注册表 API 已启用 - 确实如此。

更新 2:
我在运行 ubuntu 19.04 的机器上遇到了这些问题。根据下面的评论,我能够通过云 shell 进行推送。然后我在 MacBook Pro 上进行了相同的练习 - 没有问题。

于是我卸载了 Cloud SDK per the doco使用标准 linux install instructions之前。然后我使用 debian-ubuntu install instructions 重新安装(版本 274.0.1-0)... 还是不行。

当我对图像执行 docker pull 时(因为 push 对 MBP 起作用)我收到此错误: Error response from daemon: unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication
当我执行推送时,我收到此错误: unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication
所以在这个阶段,鉴于 MBP 的成功和 linux/ubuntu 机器上的缺乏,问题仅限于 linux/ubuntu 安装。

更新 3:
我使用了一个单独的 ubuntu 服务器,使用 sudo snap install google-cloud-sdk --classic 进行了全新安装,按照文档做了所有其他的事情,但仍然有完全相同的问题。所以我认为这是一个 linux google cloud SDK 特定问题。

有没有人最近能够安装和使用带有 GCR 的云 SDK 的 Ubuntu 土地?????????

最佳答案

我能够在多台 ubuntu 机器上复制这个问题。我在最近的云 SDK 更新 (276.0.0) 后再次尝试,但没有成功。

最后我使用了 json key 文件 authentincati described in the docs here作为一种工作正常的解决方法。

关于google-container-registry - 无法推送到 Google Container Registry - 权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59599316/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com