部署至 App Hosting 的其他方式

我們通常建議使用自動推出手動觸發推出功能。不過,您可能需要更自訂的部署流程。App Hosting 提供多種自訂部署選項。

使用 Firebase CLI 從來源部署

使用 Firebase CLI,即可直接從本機電腦將應用程式的原始碼和設定推送至 Firebase。如果您有其他 Firebase 部署作業 (例如安全性規則或函式),並想透過單一 CLI 指令一併部署網頁應用程式和後端服務,這項功能就非常方便。

部署時,App Hosting 會將原始碼上傳至 Google Cloud Storage bucket,在 Cloud Build 中執行架構建構指令,並將最終構件部署至 Cloud Run 和 Cloud CDN。App Hosting 會對本機來源部署作業和 GitHub 部署作業,使用相同的建構程序

如要從本機來源部署應用程式,請按照下列步驟操作:

  1. 在本機專案目錄中執行 firebase init apphosting
  2. 在提示中選取「Use an existing project」,然後選取所選的 Firebase 專案。
  3. 選取要部署的新後端或現有後端;這個步驟會為本機目錄設定 App Hosting 部署作業,並提示您輸入成功部署應用程式所需的資訊 App Hosting

    1. 要部署的後端 ID
    2. 要部署的區域 (如要建立新的後端)
    3. 應用程式程式碼根目錄的路徑

    App Hosting 會將部署偏好設定儲存在 firebase.json 中 (如果本機專案中沒有這個檔案,系統會建立)。初始化成功後,您就可以執行 firebase deploy,將原始碼部署至 App Hosting

如果已為多個後端設定本機來源部署作業 (也就是 firebase.json 中有多個 backendId 項目),firebase deploy 會部署至每個後端。如要部署到特定後端,請使用 firebase deploy --only apphosting:backendId

firebase.json 範例

{
  "apphosting": [
    {
      "backendId": "my-backend",
      // rootDir specifies the directory containing the app to deploy, but the entire
      // parent directory of firebase.json will be zipped and uploaded to ensure that
      // dependencies outside of the app directory will be available at build time.
      "rootDir": "./my-app",
      "ignore": [
        "node_modules",
        ".git",
        "firebase-debug.log",
        "firebase-debug.*.log",
        "functions",
      ],
    },
  ]
}

使用 Terraform 部署

如要進一步控管建構程序和部署環境,可以使用 Terraform 進行部署。您可以使用 Terraform 定義及管理 App Hosting 資源,並透過宣告式設定檔,直接將預先建構的容器映像檔部署至 App Hosting,不必依賴 App Hosting 從原始碼建構。

如果您是 Terraform 新手,請參閱「開始使用 Terraform 和 Firebase」。如果您已熟悉 Terraform,可以從範例設定檔和其他 App Hosting 資源著手。

使用 Firebase Studio 部署

使用 Firebase Studio 中的應用程式原型製作代理程式建立網頁應用程式時,可以直接從 Firebase Studio 發布或部署至 Firebase App Hosting。請參閱「使用 App Hosting 發布應用程式」。