Firebase App Hosting

Firebase App Hosting 简化了动态 Next.js 和 Angular 应用的开发和部署,提供内置框架支持、GitHub 集成,以及与 AuthenticationCloud FirestoreVertex AI in Firebase 等其他 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 控制台中监控您的 build 和发布版本,以便随时了解最新动态。通过 Firebase 控制台访问日志和指标、添加自定义网域以及手动触发发布。

工作原理

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

实现流程

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

后续步骤

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