Firebase App Hosting
Firebase App Hosting 可簡化動態網頁應用程式的開發和部署作業,並提供 GitHub 整合功能,以及與 Authentication、Cloud Firestore 和 Firebase AI Logic 等其他 Firebase 產品的整合功能。App Hosting 內建預先設定的 Next.js 和 Angular 支援,並廣泛支援各種熱門的網頁架構。
主要功能
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 會為您的提交內容建立新的 Cloud Build 建構作業。在這項工作中,Google Cloud 建構套件會判斷應用程式使用的架構,然後建立適合應用程式的容器和設定 (包括環境變數、密碼、最低或最高執行個體數、並行記憶體、CPU 和 VPC 設定)。詳情請參閱App Hosting建構程序。
- Cloud Build 工作完成後,容器會儲存在專為 Firebase App Hosting 建立的 Artifact Registry 存放區中。Firebase App Hosting 接著會使用您的映像檔和設定,在 Cloud Run 服務中新增 Cloud Run 修訂版本。
- Cloud Run 修訂版本完成並通過健康狀態驗證後,Firebase App Hosting 會修改流量設定,將所有新要求導向新的 Cloud Run 修訂版本。此時,推出作業已完成。
- 當要求傳送至 Firebase App Hosting 上託管的網站時,Google Cloud 負載平衡器會提供要求,並啟用 Cloud CDN。未快取的要求會傳送至 Cloud Run 服務。
實作路徑
設定 Firebase | 如果您沒有 Firebase 專案,請建立專案,並確認已啟用 Blaze 定價方案。 | |
設定「App Hosting」 | 使用 Firebase 控制台或 Firebase CLI 建立 App Hosting 後端。這是應用程式的管理資源集合,包括應用程式的 GitHub 存放區連線。 | |
管理及監控應用程式 | 建立App Hosting後端App Hosting後,應用程式就會在免費子網域上架,您可以在Firebase控制台Firebase中查看發布詳細資料。您可以使用 Google Cloud 控制台查看及搜尋記錄。 | |
開發應用程式 | 每當有修訂版本推送至使用中的分支版本時,App Hosting 就會自動啟動新的推出作業。 |
後續步驟
- 開始部署應用程式。
- 試試整合代管應用程式與 Firebase Authentication 和 Google AI 功能的App Hosting程式碼研究室: Next.js | Angular。}
- 進一步瞭解 App Hosting 支援的各種社群支援架構。