設計標準應用程式範本

管理員會建立標準應用程式範本,確保每個開發團隊都使用偏好的架構。這有助於控管開發人員在應用程式部署作業中使用的資源和設定。建立標準範本後,工作區中的其他使用者就能存取。您也可以將範本新增至目錄,與其他工作區共用。

開發人員可以使用範本建立及部署應用程式,您也可以將範本嵌入較大的複合範本。開發人員建立應用程式時,可以設定範本中的每個元件,但無法新增或移除任何元件。範本會產生 Terraform 程式碼,開發人員可以從 App Design Center 下載或部署。

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

事前準備

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

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

建立標準應用程式範本

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

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

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

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

您可以選取下列元件:

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

指定範本詳細資料

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

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

設計畫布

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

    前往「範本」頁面

  2. 按一下「建立範本」

  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

設計範本

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

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

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

為協助開發人員根據範本設定應用程式,請指定特定輸入和輸出變數。變數可協助您定義下列項目:

  • 開發人員根據範本建立應用程式時必須提供的特定輸入內容。舉例來說,將應用程式部署至開發、正式和測試環境時,您可以為每個環境提供不同的變數值。系統會自動在產生的 Terraform variables.tfoutputs.tf 檔案中公開這些變數。

  • 內嵌在複合式範本中的兩個標準應用程式範本之間的連線。舉例來說,如要在複合範本中建立連線,資料庫範本可能會輸出資料庫名稱變數,做為應用程式邏輯範本的輸入。

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

設計畫布

  1. 在設計畫布中選取「設計」,即可查看畫布。

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

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

    • 如要從 Google 提供的範本開始,請在畫布的「開始使用」區域中,按一下範本名稱。

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

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

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

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

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

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

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

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

    3. 在欄位中輸入 delete

    4. 點選「刪除」。

  5. 如要為範本指定輸入和輸出變數,請按照下列步驟操作:

    1. 按一下「範本詳細資料」

    2. 在「範本詳細資料」面板中,點選「變數」分頁標籤。

    3. 在「編輯變數」區域中,執行下列操作。

      1. 從「元件」清單中,選取做為變數基礎的元件。

      2. 在「變數類型」清單中,選取下列其中一個選項:

        • 輸出:元件會輸出連線可能需要的值。舉例來說,Cloud Run 服務可能會輸出 IP 位址。

        • 輸入內容:元件需要開發人員或其他標準應用程式範本的輸入內容。舉例來說,資料處理範本可能需要資料儲存範本中的資料庫名稱。

      3. 如要建立其他變數,請按一下「新增變數」,然後重複上述步驟。

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

  5. 新增輸入和輸出變數,要求開發人員輸入內容,或連結至複合範本中的其他元件。

    gcloud design-center spaces application-templates update APPLICATION_TEMPLATE \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE \
    --add-root-input-variables=componentUri=COMPONENT_URI,variable=VARIABLE \
    --add-root-output-variables=componentUri=COMPONENT_URI,variable=VARIABLE
    

    更改下列內容:

    • APPLICATION_TEMPLATE:要新增變數的應用程式範本範本 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • COMPONENT_URI:做為變數基礎的元件 URI。
    • VARIABLE:要輸入或輸出的元件變數。舉例來說,資料庫元件可能會有 database_name 變數,您可能想輸出該變數,或要求開發人員輸入該變數。

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

設定元件的預設值

針對您新增至範本的每個元件,您可以指定預設設定詳細資料,例如資源的專案和部署位置。從這個範本建立應用程式時,App 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 \
    --application-template=APPLICATION_TEMPLATE
    

    更改下列內容:

    • COMPONENT:要更新的元件 ID。
    • PROJECT:管理專案 ID。
    • LOCATION:應用程式範本區域。
    • SPACE:您的空間 ID。
    • PARAMETERS_FILE_PATH:包含元件參數的 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 程式碼

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

將範本分享至目錄

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

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

修改並重新分享範本

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

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

App Design Center 不會自動將範本修訂版本發布至目錄。如要分享最新修訂版本,請再次將範本發布至目錄。

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

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

    前往「範本」頁面

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

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

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

刪除範本

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

設計畫布

  1. 在設計畫布中,按一下「動作」圖示
  2. 點選「刪除」。

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

後續步驟