【问题标题】:Create multiple database instances via Firebase CLI通过 Firebase CLI 创建多个数据库实例
【发布时间】:2019-03-07 03:56:37
【问题描述】:

我正在研究自动部署一个项目,该项目由多个函数组成,这些函数是多个实时数据库实例上的触发器。

使用 firebase deploy 可以同时部署函数和数据库规则。 我还创建了目标,因此我可以为不同的数据库实例部署不同的规则。

我的自动化中唯一缺少的部分实际上是通过 Firebase CLI 工具创建这些不同的数据库实例;由于将触发器功能部署到不存在的特定数据库将失败。理想情况下,如果它们不存在,我想确保创建这些数据库实例,然后继续我的部署。

有没有办法通过 CLI 创建不同的数据库实例?

【问题讨论】:

  • 我不相信有办法做到这一点,但你可以随时提出功能请求:firebase.google.com/support/contact/bugs-features
  • > 我还创建了目标,因此我可以为不同的数据库实例部署不同的规则。这听起来很可疑。拥有多个数据库的最常见(也是惯用的)用例是将用户分片到数据库实例上。在这种情况下,每个数据库实例都将具有相同的规则。听起来有点像XY problem:你想通过自动创建数据库实例来完成什么?
  • @DougStevenson 这听起来像是一个答案。 :-)
  • @FrankvanPuffelen 我正在为相同项目的不同风格使用不同的数据库实例,也就是说,在某些独特的情况下,数据库规则会有所不同,这就是为什么我使用不同的目标......这实际上是工作得很好,不是我的问题,这只是为了提供上下文。我想要完成的是实际上能够将它添加到我的 CD 构建脚本中,以便在需要新风格时创建一个新的数据库实例。
  • 我建议为此使用单独的项目。正如 Doug 所说:目前没有用于创建数据库实例的 API。

标签: firebase firebase-realtime-database firebase-cli


【解决方案1】:

我不知道它是什么时候添加的,但这可能对其他有相同问题的人有用。

您可以使用以下 CLI 命令创建 Firebase 实时数据库实例:

firebase database:instances:create [instance-name]

我不知道为什么 CLI 参考中没有描述,但这里提到了:https://firebaseopensource.com/projects/firebase/firebase-tools/

【讨论】:

    【解决方案2】:

    您可以使用以下命令通过 firebase CLI 创建实时数据库实例

    firebase database:instances:create -P <alias_or_project_id> <DBinstanceName>

    如果您有付费计划,此命令可以正常工作。

    对于免费计划,它会抛出错误:- FirebaseError: HTTP Error: 400, Precondition check failed.

    注意<DBinstanceName> 应该是带有连字符的字母数字。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-30
      • 1970-01-01
      • 2013-04-14
      • 1970-01-01
      • 2018-07-02
      • 2018-11-17
      • 2021-03-16
      相关资源
      最近更新 更多