App Hosting 會處理一系列複雜的背景工作,簡化應用程式的部署作業。本頁說明該工作流程的重要部分,並提供您可能想根據應用程式需求自訂流程的資訊。
Google Cloud 和 App Hosting 架構
App Hosting 會協調一組 Google Cloud 產品,讓您可以部署、提供及監控網頁應用程式。應用程式會使用 Cloud Build 建構,並在 Cloud Run 上提供服務,並在 Cloud CDN 中快取。您可以使用 Cloud Secret Manager 等整合服務,確保 API 金鑰安全無虞。

- 當提交內容推送至實際分支時,Google Cloud Developer Connect 會將事件傳送至 Firebase App Hosting。
- 針對這項事件做出回應後,Firebase App Hosting 會針對每個連結至存放區的後端啟動新的推出作業。
- Firebase App Hosting 會為您的版本建立新的 Cloud Build 版本。在這個工作中,Google Cloud Buildpacks 會判斷應用程式使用哪個架構,以便建立適合應用程式的容器和設定 (包括環境變數、機密、最小或最大執行個體、並行記憶體、CPU 和 VPC 設定)。
- 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 Load Balancer 會啟用 Cloud CDN 並提供要求。未快取的要求會傳送至 Cloud Run 服務。
架構整合
App Hosting 為使用下列架構開發的網頁應用程式提供預先設定的建構和部署支援:
- Next.js 13.5.x 以上版本
- Angular 18.2.x 以上版本
如要進一步瞭解特定版本和支援層級的詳細資訊,請參閱支援時間表。
除了 Next.js 和 Angular 之外,App Hosting 也支援任何可提供符合輸出套件規格的建構輸出內容的網頁架構。如要進一步瞭解 App Hosting 支援的架構、架構轉接器和相關工具,請參閱「App Hosting 的架構和工具」。
App Hosting 存放區整合功能的運作方式
Developer Connect 是 Google Cloud 的外部 DevOps 工具連線平台,負責處理 GitHub 存放區和 App Hosting 後端之間的重要連結。建立 App Hosting 後端時,Developer Connect 的 UI 工作流程會引導您安裝 Firebase GitHub 應用程式。這個程序的重要步驟如下:
- 您授予 Developer Connect「Secret Manager 管理員」角色。這樣系統就能在 Cloud Secret Manager 中,以「密鑰」的形式安全地儲存憑證。
- 您授權 Firebase GitHub 應用程式存取 GitHub 存放區。
- Developer Connect 會在專案的 Secret Manager 存放區中儲存專屬的 GitHub 授權權杖,請勿修改或刪除這組權杖。
此外,App Hosting 會整合 GitHub 檢查 API,提供推出作業的檢查功能。這項檢查可讓您在 GitHub 中查看推出狀態,並在發生錯誤時偵錯部署程序。
與 Firebase 和其他 Google 服務整合
App Hosting 會設定建構和執行階段環境,方便您使用 Google 應用程式預設憑證初始化 Firebase Admin SDK。這樣一來,後端就能在建構和執行期間與其他 Firebase 產品通訊。如要進一步瞭解如何初始化應用程式,以及其他 Firebase SDK 相關主題,請參閱「在網頁應用程式中整合 Firebase SDK」。
App Hosting 個位置
App Hosting 會在特定位置 (稱為主要區域) 建立後端資源。App Hosting 會與全球 CDN 整合,以便快速傳送內容,但未快取的內容會從應用程式的主要區域提供。網頁應用程式位置的彈性有以下重要優點:
- 將資料放在距離使用者較近的地理位置,藉此提升效能並縮短延遲時間。
- 某個區域的 App Hosting 發生重大故障,不會影響在其他區域部署的 Web 應用程式。
您可以在控制台或 Firebase CLI 中建立 App Hosting 後端時,選擇下列任一區域:
us-central1
(愛荷華州)asia-east1
(台灣)europe-west4
(荷蘭)
App Hosting 後端服務帳戶
在建構和執行階段期間,App Hosting 後端會使用服務帳戶驗證其他 Google 服務。系統會在您首次在 Firebase 專案中啟用 App Hosting 時,為這些用途建立預設服務帳戶:
firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com
這個服務帳戶預設會套用至所有後端,並具備最少的權限,讓您建構、執行及監控應用程式。此外,這個帳戶也具備使用應用程式預設憑證驗證 Admin SDK的權限,可執行從 Cloud Firestore 載入資料等作業。請參閱 Firebase App Hosting 角色。
如果應用程式需要在建構期間或從執行中的後端與其他 Google 服務互動,您可以新增角色來自訂預設服務帳戶。舉例來說,如果應用程式需要 Vertex AI 權限,您可能需要新增 roles/aiplatform.user
或某些相關角色。
重要詞彙和定義
- 後端:App Hosting 建立用於建構及執行網頁應用程式的一系列受管理資源。
- 發布:已連結至 Git 提交內容的實際應用程式特定版本。
- 正式版分支版本:GitHub 存放區的分支版本,會部署至正式版網址。通常是指將功能分支或開發分支合併的子集。