我可以完全从 CLI 或脚本创建和配置 GCP 项目 + Firebase 吗?

Posted

技术标签:

【中文标题】我可以完全从 CLI 或脚本创建和配置 GCP 项目 + Firebase 吗?【英文标题】:Can I create and configure a GCP project + Firebase completely from the CLI or a script? 【发布时间】:2022-01-14 17:33:32 【问题描述】:

我正在使用 gcloud + firebase cli 探索一种可重现的方式来创建和配置 GCP + Firebase 项目。

我使用 gcloud cli 工具创建了 GCP 项目。然后我使用 firebase cli 运行命令 firebase init firestore

最终还是输出了……

错误:您之前似乎没有在此项目中使用过 Cloud Firestore。转到 https://console.firebase.google.com/project/my-project/firestore 创建您的 Cloud Firestore 数据库。

有没有一种方法可以让我使用 cli 工具或脚本 API“创建我的 firestore 数据库”,而不必导航到 Web GUI 工具并手动执行步骤?

【问题讨论】:

你的问题太宽泛了。简单的答案是否定的,某些任务必须在 GUI 中完成。随着越来越多的功能被实现为 API,该列表正在不断发展。编辑您的问题,使其更具体地处理您需要执行的一项任务,而不是完全从 CLI 或脚本中指定 GCP Project + Firebase。 Google 和 Google Cloud 包含数百种服务。了解每项服务的每一个细节将限制谁能回答这个广泛的问题。 您将在 AWS 和 Azure 中遇到同样的问题。我不知道有哪个云供应商为每个功能提供 API。所有云都不是开发者平台。它们是用于部署应用程序和服务的生产平台。 【参考方案1】:

除非 Firebase 在幕后做更多事情,否则创建 Firestore 实例可能就像来自 GCloud CLI reference 的这个命令一样简单:

gcloud firestore databases create --region=us-central --project=my-project

整个创建-供应周期的文档(从 GCP 的角度来看)是 here - 包括 Terraform details(在编写文档后可能已经发布了一些命令)。

【讨论】:

这不是答案。由于某种原因,此命令需要创建应用引擎实例。我不需要应用引擎实例。 @Scorb 我刚刚在 Google Cloud Console 中打开了我的一个 Firebase 项目,尽管我没有积极使用 App Engine,但已经为我创建了一个应用引擎项目(但没有部署任何内容给它)。根据docs I linked:“Firestore 依赖于 App Engine。您必须激活 App Engine 才能使用 Firestore。”这将是 Firebase 在我的回答中回避的幕后工作。 @Scorb - App Engine 在后台用于许多服务和功能。

以上是关于我可以完全从 CLI 或脚本创建和配置 GCP 项目 + Firebase 吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何从工件注册表(GCP)下载 jar?

如何使用cli命令在gcp中更改项目

从 MacOS 完全卸载 detox

boto3或aws cli是否具有从实例创建模板?

GCP VM 启动和关闭脚本复制到哪里?

带有 CLI 和配置脚本的 python 项目结构