Firebase App Hosting

Firebase App Hosting 可简化动态 Next.js 和 Angular 应用的开发和部署,提供内置的框架支持、GitHub 集成以及与其他 Firebase 产品(如 Authentication、Cloud Firestore 和 Vertex AI for Firebase)的集成。

使用入门

 

主要功能

GitHub 集成 只需进行 git 提交,即可发布应用的新版本。每当您推送到特定分支时,App Hosting 都会自动部署。
由 Google Cloud 提供支持 App Hosting 遵循《Google Cloud 服务条款》,并将您的应用部署到您信任的 Google Cloud 产品。应用使用 Cloud Build 构建,在 Cloud Run 上提供,并缓存在 Cloud CDN 中。Cloud Secret Manager 等集成服务可确保您的 API 密钥安全无虞。
大规模发布依托 AI 技术的功能 从使用 Gemini 的 AI 示例开始。 使用 Cloud Secret Manager 保护 API 端点的 API 密钥,并利用 App Hosting 的流式传输支持,在您向应用添加生成式 AI 功能时保持快速的初始加载速度。
Firebase 控制台集成 您可以在 Firebase 控制台中监控您的构建和发布情况,随时了解最新动态。通过 Firebase 控制台访问日志和指标、添加自定义网域,以及手动触发发布。

工作原理

  1. 使用 Firebase 控制台或 Firebase CLI,授权 Firebase GitHub 应用并将其安装到您的代码库中。
  2. 仍然在 Firebase 控制台或 Firebase CLI 中,创建一个包含用于持续部署的代码库和实时分支的 Firebase App Hosting 后端。 App Hosting 会为您的后端创建默认发布政策,以便在有更改推送到目标分支时立即发布至 100% 的流量。
  3. 当提交被推送到您的实时分支时,Google Cloud Developer Connect 会向 Firebase 应用托管发送一个事件。
  4. 响应此事件,Firebase App Hosting 会为您的最新提交启动新的发布。
  5. Firebase App Hosting 会为您提交创建一个新的 Cloud Build 作业。在此作业中,开源 Buildpack 会确定应用中使用哪个框架来创建适合您的应用的容器和配置(包括环境变量、Secret、最小或最大实例数、并发内存、CPU)。
  6. Cloud Build 作业完成后,您的容器将存储在专用于 Firebase App Hosting 的 Artifact Registry 代码库中。然后,Firebase App Hosting 会使用您的映像和配置向 Cloud Run 服务添加新的 Cloud Run 修订版本。验证您的 Cloud Run 修订版本运行状况良好后,Firebase App Hosting 会修改其流量配置,以将所有新请求指向新的 Cloud Run 修订版本。此时,发布已完成。
  7. 当请求发送到在 Firebase 应用托管上托管的网站时,请求将由启用了 Cloud CDN 的 Google Cloud 负载平衡器处理。未缓存的请求会发送到源服务器,源服务器会将该请求发送到您的 Cloud Run 服务。

实现流程

设置 Firebase 如果您还没有 Firebase 项目,请创建一个,并确保该项目已启用 Blaze 定价方案。
设置 App Hosting 使用 Firebase 控制台或 Firebase CLI,创建一个应用托管后端。这是应用的托管资源的集合,包括与应用的 GitHub 代码库的连接。
管理和监控应用 创建好 App Hosting 后端后,您的应用将可以在其免费子网域上访问,并且您可以在 Firebase 控制台中查看发布详情。您可以使用 Google Cloud 控制台查看和搜索日志。
开发应用 每次提交被推送到实际分支时,App Hosting 都会自动开始新的发布。

后续步骤

  • 开始部署应用。
  • 试用 App Hosting Codelab,将托管应用与 Firebase Authentication 和 Google AI 功能集成:Next.js | Angular