Firebase 中的 Function Cloud 是否免费(Cloud Functions 部署需要即用即付 (Blaze) 计费计划)

moh*_*li 53 firebase google-cloud-functions firebase-cli

当我创建我的第一个部署函数时我无法部署因为我有错误要求我升级到我的帐户到 Blaze 我需要知道我可以在使用免费帐户时部署函数吗??

输出:

i  deploying functions
i  functions: ensuring required API cloudfunctions.googleapis.com is enabled...
i  functions: ensuring required API cloudbuild.googleapis.com is enabled...
!  functions: missing required API cloudbuild.googleapis.com. Enabling now...
+  functions: required API cloudfunctions.googleapis.com is enabled

Error: Cloud Functions deployment requires the pay-as-you-go (Blaze) billing plan. To upgrade your project, visit the following URL:

https://console.firebase.google.com/project/institute-for-admin/usage/details

For additional information about this requirement, see Firebase FAQs:

https://firebase.google.com/support/faq#functions-runtime
Run Code Online (Sandbox Code Playgroud)

Dou*_*son 36

正如消息所说,如果您的目标是 nodejs 10,则无法在 Spark 免费层上部署函数。 阅读常见问题解答的链接

为什么我需要一个结算帐户才能将 Node.js 10 运行时用于 Cloud Functions for Firebase?

由于计划于 2020 年 8 月 17 日更新其底层架构,Cloud Functions for Firebase 将依赖于一些额外的 Google 付费服务:Cloud BuildContainer RegistryCloud Storage。这些架构更新将适用于部署到 Node.js 10 运行时的函数。除现有定价外,还将对这些服务的使用进行计费。

在新架构中,Cloud Build 支持功能的部署。您只需为构建函数的运行时容器所需的计算时间付费。

Cloud Storage 与Google Container Registry互操作,将为运行函数的容器提供存储空间。您需要为部署功能所需的每个容器付费。如果您目前在免费使用限制内使用 Cloud Functions,您可能会注意到存储的每个容器都有新的小额费用 - 例如,1GB 存储的费用为每月 0.026 美元

要详细了解您的账单可能会如何变化,请查看以下内容

如果您想以节点 8 为目标,那可能仍然有效。但它已被弃用,您的功能最终将停止工作。在这种情况下,您仍然需要将它们迁移到节点 10,并提供计费帐户。

Cloud Functions 仍有每月免费配额,详情见定价页面。但是您必须提供信用卡并制定账单计划才能使用它。您将负责支付任何每月超额费用。

  • 因此,实际上没有办法指定我们的网站应该直接关闭而不是过度收费。如果我们的网站遭受 DDOS 攻击,我们将承担全部赔偿责任。对于小型开发者来说没有意义 (41认同)
  • 非常感谢,我将使用节点 8 进行测试,一切正常后,我将节点升级到 10 (2认同)
  • 这是否意味着“完全免费的服务器端代码执行”的时代已经结束了?他们需要一个计费帐户来在服务器端执行代码? (2认同)
  • 请注意,您可以限制使用 https://cloud.google.com/docs/quota#capping_usage (2认同)
  • @Xanlantos 遗憾的是,您无法为 Firestore 读/写等设置限制。对此的支持已于 2019 年底取消。只有在您即将超出计划限制时,您才能创建预算,并在其中收到“警告”。但无法设定真正的限制,这非常令人失望。=> https://firebase.google.com/docs/firestore/quotas (2认同)

San*_*ath 20

目前,firebase 使用节点版本 10 来实现需要您付费的云功能(即付即用)。

您可以在 functions/package.json 中将节点从 10 更改为 8(免费使用)

"engines": {
    "node": "8". // changed from 10 to 8
  },
Run Code Online (Sandbox Code Playgroud)

但是,这将很快被弃用。这是 firebase 网站所说的:

Node.js 8 已被弃用。从 2021 年 2 月 15 日开始,我们将不再支持 Node.js 8 功能的新部署或更新。从 2021 年 3 月 15 日开始,我们将不再支持现有 Node.js 8 函数的执行。

https://firebase.google.com/support/faq?authuser=0#expandable-10-label

编辑

这可能是一个遗产。请查看最新评论以获取更新的政策。

  • 它已被禁用,现在 firebase 只允许使用 10+ 版本进行部署 (10认同)
  • 很高兴它对你有帮助!:) (4认同)
  • 太感谢了。拯救了我的一天。一直想知道为什么我的 firebase 功能没有部署。 (2认同)

Mej*_*jan 5

只是为了清除这里的混乱

Firebase 似乎关闭了 Spark 计划的云功能。所以,我想如果 firebase 计划一一取消免费计划功能会怎样。

这是他们的常见问题解答页面的答案

Cloud Functions 的这一变化是否意味着 Firebase 免费计划 (Spark) 即将消失?

不会。此更改不会影响其他 Firebase 产品。2021 年 3 月 15 日之后,Cloud Functions 将无法使用 Spark 计划。