設計應用程式範本

管理員會建立應用程式範本,確保每個開發團隊都使用偏好的架構。這有助於控管開發人員在應用程式部署作業中使用的資源和設定。

建立應用程式範本後,工作區中的其他使用者就能存取。您也可以將範本新增至目錄,與其他工作區共用。

開發人員可以使用您的範本建立及部署應用程式。開發人員建立應用程式時,可以設定範本中的每個元件,但無法新增或移除任何元件。範本會產生 Terraform 程式碼,開發人員可以從應用程式設計中心下載或部署。

本文說明如何使用 App Design Center 設計、設定及共用應用程式範本。

事前準備

您必須在啟用應用程式的資料夾或管理專案中,具備下列其中一個角色

  • Application Design Center 管理員 (roles/designcenter.admin)
  • Application Design Center 使用者 (roles/designcenter.user)

建立應用程式範本

建立應用程式範本,與開發團隊分享架構設計。您可以在範本設計中新增下列元件:

  • 資產:可協助您控管其他資源的高階資源。例如服務帳戶。

  • 服務:透過網路使用的網路或 API 介面。 例如 Cloud Storage 和 Vertex AI。

  • 工作負載:執行業務功能的二進位檔部署作業。例如 Cloud Run 和 Compute Engine。

您可以選取下列元件:

設計範本時,App Design Center 會產生 Terraform 程式碼,反映設計和設定詳細資料。

指定範本詳細資料

範本詳細資料可協助您分類範本,並幫助開發人員決定是否要使用範本。

如要輸入範本詳細資料,請按照下列步驟操作:

設計畫布

  1. 按一下導覽選單中的「範本」

    前往「範本」頁面

  2. 點選「Create template」(建立範本)。

  3. 在「範本 ID」欄位中,輸入範本的專屬 ID。 這是必填欄位。

  4. 在「範本名稱」欄位中,輸入要顯示在 Google Cloud 控制台中的易讀 ID。

    如果您未提供名稱,系統會將範本 ID 複製到這個欄位。

  5. 在「Description」(說明) 欄位中,簡要說明應用程式的用途。

  6. 按一下「建立範本」,系統會顯示設計畫布。

gcloud CLI

建立新的應用程式範本。

gcloud design-center spaces application-templates create APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE \
--display-name=DISPLAY_NAME \
--description=DESCRIPTION

更改下列內容:

  • APPLICATION_TEMPLATE:要建立的應用程式範本範本 ID。
  • PROJECT:管理專案 ID。
  • LOCATION:應用程式範本區域。
  • SPACE:您的空間 ID。
  • DISPLAY_NAME:要在 Google Cloud 控制台中顯示的名稱。
  • DESCRIPTION:簡短說明。

詳情請參閱「gcloud design-center spaces application-templates create」。

設計範本

在設計畫布上新增及連結元件,設計範本。 以下範例包含三個連結的元件。

設計畫布中的三層式網頁應用程式。應用程式包含前端、後端和資料庫元件。

您可以將元件新增至下列起點,設計範本:

如要設計範本,請按照下列步驟操作:

設計畫布

  1. 在設計畫布中,確認已選取「設計」

  2. 如要開始使用,請執行下列任一操作:

    • 如要從頭開始,請在「元件」區域中點選元件,將其新增至畫布區域。

    • 如要從 Google 提供的範本開始,請按一下範本名稱。

    • 如要使用自然語言對話生成範本,請按一下「Custom Application with Gemini」

  3. 如要在元件之間建立通訊管道,請執行下列其中一項操作:

    • 如要在畫布上連結兩個元件,請從一個元件的藍點拖曳到另一個元件的藍點。

    • 如要新增至現有元件,請按一下「新增」,然後選取要新增的元件。

    如需連線詳細資料,請參閱各支援資源的設定說明文件。

  4. 如要移除元件或連線,請按照下列步驟操作:

    1. 在畫布中,按一下元件或連線。

    2. 在「設定」區域中,按一下「刪除」

    3. 在欄位中輸入 delete

    4. 按一下「Delete」(刪除)

gcloud CLI

  1. 找出要新增至範本的 Google 目錄元件範本修訂版本 URI。

    gcloud design-center spaces shared-templates list \
    --google-catalog \
    --location=us-central1
    

    詳情請參閱 gcloud design-center spaces shared-templates list

  2. 在應用程式範本中新增元件。

    gcloud design-center spaces application-templates components create COMPONENT \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --application-template=APPLICATION_TEMPLATE \
    --shared-template-revision-uri=SHARED_TEMPLATE_URI
    

    更改下列內容:

    • COMPONENT:要新增至範本的元件 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • APPLICATION_TEMPLATE:要新增元件的應用程式範本 ID。
    • SHARED_TEMPLATE_URI:元件共用範本 URI。例如:projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1

    詳情請參閱「gcloud design-center spaces application-templates components create」。

  3. 在範本中新增第二個元件。

    gcloud design-center spaces application-templates components create COMPONENT_2 \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --application-template=APPLICATION_TEMPLATE \
    --shared-template-revision-uri=SHARED_TEMPLATE_URI_2
    

    更改下列內容:

    • COMPONENT_2:要新增至範本的第二個元件 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • APPLICATION_TEMPLATE:要新增元件的應用程式範本 ID。
    • SHARED_TEMPLATE_URI_2:第二個共用範本 URI 元件。例如:projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1

    詳情請參閱「gcloud design-center spaces application-templates components create」。

  4. 在兩個元件之間建立連線。

    gcloud design-center spaces application-templates components connections create CONNECTION \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --application-template=APPLICATION_TEMPLATE \
    --component=COMPONENT \
    --destination-component-uri=COMPONENT_2
    

    更改下列內容:

    • CONNECTION:要新增至範本的連線 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • APPLICATION_TEMPLATE:要新增連線的應用程式範本 ID。
    • COMPONENT:來源元件 ID。
    • COMPONENT_2:目的地元件 ID。

    詳情請參閱 gcloud design-center spaces application-templates components connections create

設定元件的預設值

針對新增至畫布的每個元件,您可以指定設定詳細資料,例如建立資源的專案,以及部署資源的位置。如果您指定設定詳細資料,Application Design Center 會將這些資料做為應用程式的預設值。

如果預設設定不符合需求,您也可以修改連線詳細資料。舉例來說,您可以修改環境變數鍵名、變更連線埠,或為服務帳戶新增其他角色。

開發人員部署應用程式前,可以查看及修改您在範本中設定的預設值。開發人員必須為每個支援的資源設定必要詳細資料。

如要設定元件和連線,請按照下列步驟操作:

設計畫布

  1. 在設計畫布中點選元件。

  2. 在「Configuration」(設定) 區域,從「Project ID」(專案 ID) 清單中,選取要部署資源的專案。選取符合下列資格的專案:

  3. 設定資源的其他設定。舉例來說,您可以為 Cloud SQL 設定下列項目:

    • 區域
    • 備份設定
    • 資料庫標記
    • IP 設定

    如要查看各元件的設定說明文件連結,請參閱「支援的資源」。

  4. 在設計畫布上連結元件時,系統會使用預設設定值建立連結。如要新增或修改連線詳細資料,請按照下列步驟操作。

    1. 在設計畫布中,按一下兩個元件之間的連線。「連線」面板隨即開啟,並顯示連線參數。

    2. 執行下列其中一個步驟:

      • 如要修改現有的連線參數,請按一下「編輯」

      • 如要新增連線參數,請按一下「新增參數」

    3. 更新「鍵」和「值」欄位。舉例來說,您可能想修改下列詳細資料:

      • 環境變數鍵名,以符合應用程式需求。
      • 連線埠值。
      • 新增至服務帳戶的角色。
  5. 按一下 [儲存]

gcloud CLI

  1. 說明應用程式範本中的每個元件,即可查看元件參數。

     gcloud design-center spaces application-templates components describe COMPONENT \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --application-template=APPLICATION_TEMPLATE
    

    更改下列內容:

    • COMPONENT:要說明的元件 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • APPLICATION_TEMPLATE:應用程式範本的範本 ID。

    詳情請參閱 gcloud design-center spaces application-templates components describe

  2. 針對要修改的每個元件,在主目錄中建立包含參數值的 JSON 檔案。

    舉例來說,您可以為 Cloud Run 元件建立下列檔案:

      [
          {
            "key": "service_name",
            "value": "frontend-service"
          },
          {
            "key": "project_id",
            "value": "DEPLOYMENT_PROJECT"
          }
      ]
    
  3. 更新應用程式範本中的每個元件,設定必要參數。

     gcloud design-center spaces application-templates components update COMPONENT \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --parameters=PARAMETERS_FILE_PATH_1 \
     --application-template=APPLICATION_TEMPLATE
    

    更改下列內容:

    • COMPONENT:要更新的元件 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • PARAMETERS_FILE_PATH_1:包含元件參數的 JSON 檔案。
    • APPLICATION_TEMPLATE:應用程式範本的範本 ID。

    詳情請參閱「gcloud design-center spaces application-templates components update」。

  4. 說明元件連線。

     gcloud design-center spaces application-templates components connections describe CONNECTION \
     --component=COMPONENT \
     --application-template=APPLICATION_TEMPLATE \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE
    

    更改下列內容:

    • CONNECTION:連線 ID。
    • COMPONENT:元件 ID。
    • APPLICATION_TEMPLATE:範本 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。

    詳情請參閱 gcloud design-center spaces application-templates components connections describe

  5. 編輯元件連線參數。

     gcloud design-center spaces application-templates components connections update CONNECTION \
     --component=COMPONENT \
     --application-template=APPLICATION_TEMPLATE \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --source-component-parameters='[{"key": SOURCE_KEY, "value": SOURCE_VALUE}]'
    

    更改下列內容:

    • CONNECTION:連線 ID。
    • COMPONENT:元件 ID。
    • APPLICATION_TEMPLATE:範本 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • SOURCE_KEY:新的參數鍵。
    • SOURCE_VALUE:新的參數值。

    詳情請參閱「gcloud design-center spaces application-templates components connections update」。

編輯 Terraform 程式碼

設計應用程式範本時,應用程式設計中心會產生 Terraform 程式碼,反映設計和設定詳細資料。您可以編輯 Terraform,指定元件設定詳細資料。

系統會產生下列 Terraform 檔案:

  • main.tf:基礎架構程式碼,包含範本中每個元件的模組。
  • outputs.tf:公開已部署基礎架構元件的相關資訊。
  • variables.tf:宣告 main.tf 檔案中使用的變數名稱、類型和說明。
  • input.tfvars:定義 main.tf 檔案中使用的變數值。
  • providers.tf:定義有助於 Terraform 與 Google Cloud API 和資源互動的標籤。

如需背景資訊,請參閱「Terraform onGoogle Cloud總覽」。

如要編輯 Terraform 程式碼,請按照下列步驟操作:

  1. 點選設計畫布中的「程式碼」。系統會顯示產生的 Terraform 檔案。

  2. 按一下「main.tf」main.tf。系統會顯示每個元件的 Terraform 模組。

  3. 編輯設定詳細資料。詳情請參閱各支援資源的設定文件。

    系統會自動驗證編輯內容,如果編輯內容無效,系統會顯示錯誤。

  4. 如要醒目顯示並比較編輯內容,請按照下列步驟操作:

    1. 按一下「查看差異」

    2. 如要還原變更,請在邊界按一下「按一下即可還原變更」

    3. 按一下「查看差異」即可關閉比較檢視畫面。

  5. 如要儲存編輯內容,請按一下「儲存程式碼變更」

  6. 如要驗證變更,請按照下列步驟操作。

    1. 按一下「設計」
    2. 按一下元件,查看設定詳細資料。

刪除範本

如果不再需要範本,可以刪除。

設計畫布

  1. 在設計畫布中,按一下「動作」圖示
  2. 按一下「Delete」(刪除)

gcloud CLI

刪除應用程式範本。

```sh
gcloud design-center spaces application-templates delete APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE
```

更改下列內容:

  • APPLICATION_TEMPLATE:要刪除的應用程式範本範本 ID。
  • PROJECT:管理專案 ID。
  • LOCATION:應用程式範本區域。
  • SPACE:您的空間 ID。

詳情請參閱 gcloud design-center spaces application-templates delete

驗證範本

與開發人員分享範本前,請確認範本運作正常。如要驗證範本,請按照下列步驟操作:

  1. 使用下列設定建立應用程式
    1. 從「Environment」(環境) 清單中選取「TEST」(測試)
    2. 從「Criticality」(重要性) 清單中選取「LOW」(低)
  2. 部署應用程式。如需部署步驟,請參閱「從控制台部署應用程式」。
  3. 測試基礎架構,確認是否符合需求。
  4. 為避免產生週期性費用,請刪除測試部署作業。

將範本分享至目錄

範本驗證完成後,即可發布至目錄。 如果應用程式開發人員有權存取共用目錄的工作區,就能使用範本。

  1. 在設計畫布中,按一下「Add to Catalog」(新增至目錄)
  2. 如要管理共用目錄的工作區,請參閱「管理目錄」。

修改並重新分享範本

隨著您對應用程式的瞭解越來越深入,業務需求也會不斷演變,因此您可能需要更新應用程式範本。舉例來說,您可能會決定新增 Memorystore 服務來進行快取,藉此提升後端服務的效能。

修改範本時,系統會建立範本修訂版本。如要將變更套用至現有應用程式,開發人員必須使用修訂版本部署應用程式。

應用程式設計中心不會自動將範本修訂版本發布至目錄。如要分享最新修訂版本,請再次將範本發布至目錄。

如要建立新修訂版本,請按照下列步驟操作:

  1. 按一下導覽選單中的「範本」

    前往「範本」頁面

  2. 選取要修訂的應用程式範本。畫布隨即開啟。

  3. 修改範本,以符合新規定。舉例來說,新增及設定新元件。

  4. 如要與其他工作區共用最新修訂版本,請再次將範本新增至相關目錄

後續步驟