Google云端部署错误-无法为[project]检索默认的Google Cloud Storage存储桶

Rob*_*Rob 5 google-app-engine google-cloud-storage google-cloud-platform gcloud

不确定我需要在这里采取的步骤。我已经安装好Rails应用程序,并准备在Google Cloud Platform上进行部署,最后要做的就是运行gcloud preview app deploy

问题是当我运行它时出现错误

ERROR: Error Response: [403] Request had insufficient authentication scopes.
ERROR: (gcloud.preview.app.deploy) Could not retrieve the default Google Cloud Storage bucket for [project]. Please try again or use the [bucket] argument.
root@project-small-group-1-po7p:/home/project/site/site# 
Run Code Online (Sandbox Code Playgroud)

我很确定这些错误是相关的。通过查找错误,我发现启用google storage API可以解决问题,并且为项目创建了默认存储桶。现在已启用Storage API,我可以看到存储桶已启用,但错误仍然存​​在。

也许我需要创建从服务器到存储桶的某种权限,但是我不知道这是否是问题,是否需要设置这些权限?

我需要做什么?我有2个实例设置和一个SQL实例,并在它们上安装了Rails应用程序。

小智 3

扎卡里·纽曼走在正确的道路上。检查您是否已正确通过 gcloud 身份验证。我对我的项目使用以下两个选项之一:

gcloud auth login
Run Code Online (Sandbox Code Playgroud)

或者

gcloud auth activate-service-account --key-file SERVICE_ACCOUNT_JSON
Run Code Online (Sandbox Code Playgroud)

我使用第一个进行个人测试。我在 CI 服务上使用第二个。要从 Google Cloud 项目的主菜单创建服务帐号 JSON:

  • 导航到“权限 > 服务帐户选项卡”。
  • 单击“创建服务帐户”按钮。
  • 输入一个有用的名称。
  • 单击“提供新私钥”复选框
  • 使用 JSON 密钥类型。
  • 单击“创建”按钮。

这是您保存 JSON 文件的唯一机会,因此请确保其安全。

尝试一下,看看会发生什么。