【问题标题】:Cannot redeploy GCP App Engine project after restoring it恢复后无法重新部署 GCP App Engine 项目
【发布时间】:2020-12-23 08:18:41
【问题描述】:

我使用 Java 11 创建了一个 GCP App Engine (AE) 项目。创建 AE 项目后,我将其链接到 Firebase(而不是一开始就通过 Firebase 本地创建)。一切正常。

今天我删除了 Firebase 帐户,以为它会保留原始 AE 项目,因为我认为它只是我核心 AE 项目的附加组件。我错了。 AE 项目和 Firebase 帐户均已删除。我通过 GCP 管理屏幕恢复了两个站点,并且站点恢复了(AE 项目 Firebase 功能)。

现在的问题是我无法使用gcloud app deploy 部署我的代码的新版本。构建日志(在 GCP 端)列出了以下错误:

第 3 步 - “分析器”:已有图像(带摘要):us.gcr.io/gae-runtimes/buildpacks/java11/builder:java11_20200816_11_0_RC00

第 3 步 - “分析器”:错误:无法初始化缓存:无法创建图像缓存:访问缓存图像“us.gcr.io/my-project-dev-287623/app-engine-tmp/build- cache/ttl-7d/default/buildpack-cache:latest": 连接到 repo store 'us.gcr.io/my-project-dev-287623/app-engine-tmp/build-cache/ttl-7d/default/ buildpack-cache:latest': GET https://us.gcr.io/v2/my-project-dev-287623/app-engine-tmp/build-cache/ttl-7d/default/buildpack-cache/manifests/latest: DENIED: Permission denied for "latest" from request "/v2/my-project-dev-287623/app-engine-tmp/build-cache/ttl-7d/default/ buildpack-cache/manifests/latest”。

现在我无法部署任何新代码。有什么想法吗?

【问题讨论】:

  • 通过点击上面的网址,消息显示“请启用或联系项目所有者以在 Cloud Console 中启用 Google Container Registry API”。尝试先启用 Google Container Registry API。
  • @ShawnDiWu - 我检查了 Google Container Registry API,它已经启用。我可以在凭据下看到我的服务帐户条目。我看不出有什么不妥之处。
  • 在部署时尝试使用--no-promote --no-stop-previous-version 标志。如果可行,请停止和/或删除旧版本。让我知道这是否有效。
  • @RafaelLemos - 我试过--no-promote --no-stop-previous-version,但仍然失败,出现同样的权限错误。
  • 可以确定是权限错误。你需要grant permission to the docker。它也可能是由“Cloud Build API”引起的,检查“Cloud Build API”是否已启用并尝试禁用它然后启用它。它可能会有所帮助。如果问题仍然存在,请告诉我。

标签: java firebase google-app-engine google-cloud-platform


【解决方案1】:

当我为我的帐户启用结算功能后,此问题已得到解决。请检查您是否为您的项目启用了计费/关联的计费帐户。

【讨论】:

    【解决方案2】:

    我想指出您问题中的一个误解,我在第一条消息中忘记提及了。没有 GCP 项目与 Firebase 项目的链接。 Firebase 项目是一个 Google Cloud 项目。这就是为什么当您删除 Firebase 项目时,GCP 项目消失了。这是预期的行为。你说的链接方式,其实就是在当前的GCP项目中添加Firebase服务

    可以确定是权限错误。您需要 grant permission 到 docker。也可能是“Cloud Build API”引起的,检查“Cloud Build API”是否已启用并尝试禁用它然后启用它。它可能会有所帮助。如果问题仍然存在,请告诉我

    【讨论】:

      【解决方案3】:

      如果您的计费和构建 API 已启用,请检查此项。试用期结束后,Google 会要求升级帐户以启用其服务。 Google 在 Cloud Console 上显示了一个通知栏。

      【讨论】:

        【解决方案4】:

        由于我的情况是付款失败。上个月有一笔 0.01 美元的待付款付款失败,因为最低付款为 10 美元。我已经预付了 10 美元并且工作正常。

        【讨论】:

          猜你喜欢
          • 2012-02-11
          • 2013-11-06
          • 2017-05-01
          • 2020-12-22
          • 2016-07-13
          • 1970-01-01
          • 2021-01-06
          • 2019-04-11
          • 2018-12-10
          相关资源
          最近更新 更多