Firebase App Hosting
Firebase App Hosting 可简化动态 Web 应用的开发和部署,提供 GitHub 集成,并可与其他 Firebase 产品(例如 Authentication、Cloud Firestore 和 Firebase AI Logic)集成。 App Hosting 内置了对 Next.js 和 Angular 的预配置支持 并广泛支持各种热门 Web 框架。
主要功能
| 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 控制台访问日志和指标、添加自定义网域,以及手动触发发布。 |
工作原理
- 使用 Firebase 控制台或 Firebase CLI,在您的代码库中授权并安装 Firebase GitHub 应用。
- 仍在 Firebase 控制台或 Firebase CLI 中,创建一个 Firebase App Hosting 后端,其中包含用于 持续部署的代码库和活动分支。 App Hosting 会为您的后端创建默认发布政策,以便在更改推送到目标 分支时立即向 100% 的流量发布。
- 当提交推送到您的活动分支时,Google Cloud Developer Connect 会向 Firebase App Hosting发送事件。
- Firebase App Hosting 会响应此事件,Firebase App Hosting 为
连接到代码库的后端创建新的构建。
- 首先,Firebase App Hosting 会为 您的提交创建新的 Cloud Build 构建。在此作业中, Google Cloud buildpack 会确定您的应用中使用的框架,以创建适合您应用的容器和配置(包括 环境变量、密钥、最小或最大实例数、并发 内存、CPU 和 VPC 配置)。 如需了解详情,请参阅 the App Hosting 构建流程 For 。
- Cloud Build 作业完成后,您的容器将存储在专用于 Firebase App Hosting 的 Artifact Registry 代码库中。 Firebase App Hosting 然后使用您的映像和配置向 Cloud Run 服务添加新的 Cloud Run 修订版本。
- Cloud Run 修订版本完成并验证为正常后, Firebase App Hosting 会修改其流量配置,以将所有新 请求指向新的 Cloud Run 修订版本。此时,发布完成。
- 当请求发送到 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,该 Codelab 将托管应用与 Firebase Authentication 和 Gemini API 功能集成:Next.js | Angular。
- 详细了解 App Hosting 支持的各种 社区支持的框架 。App Hosting