透過 App Hosting 使用單一存放區

有了單一存放區,您可以在單一應用程式中整理及管理多個專案 目錄。本指南將說明如何開始使用 App Hosting:

使用 Firebase CLI 部署單聲道存放區

Monorepo 支援已內建於 Firebase 叫用的後端設定流程 CLI 指令 apphosting:backends:create。進入這個流程並指定 系統會提示您指定應用程式的根目錄 相對於存放區的價格將路徑傳遞給 要部署在單聲道存放區中的哪些應用程式

$ firebase apphosting:backends:create --project [project-name] --location us-central1
i  === Import a GitHub repository
✔  Connected with GitHub successfully

? Which GitHub repo do you want to deploy? gh-username/nx-monorepo
? Specify your app's root directory relative to your repository path/to/app

以下列 Nx 值為例,系統會部署的資產 專案結構和「target-app」您要建構的應用程式 部署:

.
    ├── lib
    ├── apps
    │   └── target-app
    │       ├── project.json
    │       └── src
    │           └── ...
    ├── nx.json
    ├── package-lock.json
    └── package.json

與存放區相關的應用程式根目錄是 apps/target-app

透過 Firebase 控制台部署單聲道存放區

Monorepo 支援內建於 Firebase 的圖形後端設定流程中 控制台。系統提示您輸入「根目錄」時「部署作業設定」底下 指定您要在單聲道存放區內部署的應用程式路徑:

控制台後端建立檢視畫面的螢幕截圖

排解單聲道部署問題

  • 如果保留「根目錄」欄位中的空白,App 在下列情況下,「託管」功能仍可建構及部署使用者的目標專案 在相關 nx.json 的 defaultProject 中指定 設定 檔案
  • 如果未指定「根目錄」或 A defaultProject,則建構將會失敗,並顯示訊息 App Hosting 在 Nx 單聲道存放區中找不到可指定的專案。
  • 如果是 Nx + Angular 應用程式,您必須使用 Angular 應用程式 建構工具來建構應用程式。 已在 project.json 中指定 Angular 應用程式建構工具