Firebase App Hosting

Firebase App Hosting 可簡化動態網頁應用程式的開發和部署作業,並提供 GitHub 整合功能,以及與 AuthenticationCloud FirestoreFirebase 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 控制台存取記錄和指標、新增自訂網域,以及手動觸發推出作業。

運作原理

  1. 使用 Firebase 控制台或 Firebase CLI,在存放區中授權並安裝 Firebase GitHub 應用程式。
  2. Firebase 控制台或 Firebase CLI 中,建立 Firebase App Hosting 後端,並使用存放區和即時分支進行持續部署。App Hosting 會為後端建立預設的推出政策,以便在變更推送至目標分支時,立即向 100% 的流量推出。
  3. 將提交內容推送至即時分支時,Google Cloud Developer Connect 會將事件傳送至 Firebase App Hosting
  4. 回應這項事件時,Firebase App Hosting 會為連結至存放區的後端建立新的建構作業。
    1. 首先,Firebase App Hosting 會為您的提交內容建立新的 Cloud Build 建構作業。在這項工作中,Google Cloud 建構套件會判斷應用程式使用的架構,然後建立適合應用程式的容器和設定 (包括環境變數、密碼、最低或最高執行個體數、並行記憶體、CPU 和 VPC 設定)。詳情請參閱App Hosting建構程序
    2. Cloud Build 工作完成後,容器會儲存在專為 Firebase App Hosting 建立的 Artifact Registry 存放區中。Firebase App Hosting 接著會使用您的映像檔和設定,在 Cloud Run 服務中新增 Cloud Run 修訂版本。
  5. Cloud Run 修訂版本完成並通過健康狀態驗證後,Firebase App Hosting 會修改流量設定,將所有新要求導向新的 Cloud Run 修訂版本。此時,推出作業已完成。
  6. 當要求傳送至 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 支援的各種社群支援架構