設定工作站集區的容器

本頁說明如何為 Cloud Run 工作站集區設定進入點指令和引數。

Cloud Run 啟動容器時,會執行映像檔的預設進入點指令和預設指令引數。如要覆寫映像檔的預設進入點和指令引數,可以使用容器設定中的 commandargs 欄位。command 欄位會指定容器執行的實際指令。args 欄位會指定傳遞至該指令的引數。

請注意,每個工作站集區的每個容器最多只能有 1000 個引數。

必要的角色

如要取得設定及部署 Cloud Run 工作站集區所需的權限,請要求管理員授予下列 IAM 角色:

如需與 Cloud Run 相關的 IAM 角色和權限清單,請參閱 Cloud Run IAM 角色Cloud Run IAM 權限。如果 Cloud Run 工作人員集區與Google Cloud API (例如 Cloud 用戶端程式庫) 介接,請參閱服務身分設定指南。如要進一步瞭解如何授予角色,請參閱部署權限管理存取權

設定進入點和引數

變更任何設定都會建立新的修訂版本。除非您明確做出更新,變更這項設定,否則後續的修訂版本也會自動取得這個設定。

指定的容器指令和引數會覆寫預設映像檔的 ENTRYPOINTCMD

您可以使用Google Cloud console、Google Cloud CLI 或 Terraform,為 Cloud Run 工作站集區設定進入點指令和引數:

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 從選單中選取「工作站集區」,然後按一下「部署容器」,設定新的工作站集區。如要設定現有工作站集區,請按一下該集區,然後按一下「編輯並部署新修訂版本」

  3. 如要設定新的工作站集區,請填寫初始工作站集區頁面,然後按一下「容器、磁碟區、網路與安全性」,展開工作站集區設定頁面。

  4. 按一下「容器」分頁標籤。

    圖片

    • 如果您不想使用容器映像檔中定義的進入點指令,請指定要讓容器執行的指令。您可以視需要指定進入點指令的引數。
  5. 按一下 [Create] (建立) 或 [Deploy] (部署)

gcloud

如要更新現有服務的啟動指令和引數,請按照下列步驟操作:

gcloud beta run worker-pools update WORKER_POOL --command COMMAND --args ARG1,ARG-N

更改下列內容:

  • WORKER_POOL:工作站集區的名稱。
  • COMMAND:容器啟動時要執行的指令 (如果您未使用預設指令)。
  • ARG1:傳送至容器指令的引數。如要使用多個引數,請以半形逗號分隔。

如要在部署新的或現有工作站集區時指定進入點和引數,請按照下列步驟操作:

gcloud beta run worker-pools deploy --image IMAGE_URL --command COMMAND --args ARG1,ARG-N

IMAGE_URL 替換為含有工作站集區的容器映像檔參照,例如 us-docker.pkg.dev/cloudrun/container/worker-pool:latest

如要將容器的 entrypoint 指令和引數還原為預設值,請提供空字串,如下所示:

gcloud beta run worker-pools deploy --image IMAGE_URL --command "" --args ""

Terraform

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

resource "google_cloud_run_v2_worker_pool" "default" {
  name     = "WORKER_POOL"
  location = "REGION"
  launch_stage = "BETA"

  template {
    containers {
      image = "IMAGE_URL"
      command = ["COMMAND"]
      args = ["ARG1", "ARG2"]
    }
  }
}

更改下列內容:

  • WORKER_POOL:工作站集區的名稱。
  • REGION: Google Cloud 區域,例如 europe-west1
  • IMAGE_URL:工作站集區所含容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • COMMAND:容器啟動時要執行的指令 (如果您未使用預設指令)。
  • ARG1ARG2:傳送至容器指令的引數。

設定補充容器部署作業的啟動順序

如要在附屬應用程式部署作業中指定容器啟動順序,請使用容器依附元件功能。指定有依附元件的容器,並列出這些容器依附的容器,以便優先啟動這些容器。系統一律會先啟動沒有任何依附元件的容器,且會同時啟動。

如要順利使用這項功能,必須使用啟動健康狀態檢查探針。啟動探測作業可讓 Cloud Run 檢查相依容器的健康狀態,確保容器順利通過檢查,再啟動下一個容器。如果您未使用健康狀態檢查,即使容器所依附的容器無法啟動,系統仍會依指定順序啟動容器。

請注意,工作站集區沒有預設的啟動健康狀態檢查探測。

使用 Google Cloud 控制台或 Google Cloud CLI 指定啟動順序:

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run 頁面:

    前往 Cloud Run

    • 從選單中選取「工作站集區」
    • 如果是現有 worker 集區,請按一下清單中的 worker 集區,然後選取「Edit and deploy new revision」(編輯並部署新修訂版本),顯示修訂版本部署表單。
    • 如要建立新的工作站集區,請按一下「Deploy container」(部署容器),顯示「Create worker pool」(建立工作站集區) 表單。
  2. 如果是新的工作站集區,請指定工作站集區名稱、輸入容器網址、CPU 分配量、輸入控制項和驗證。在「容器、磁碟區、網路與安全性」分頁中,執行下列操作:

    1. 設定 Ingress 容器。
    2. 如要新增部署的其他容器,請按一下「新增容器」
    3. 除了 Ingress 容器,請為所有容器設定啟動健康狀態檢查
    4. 如果容器需要在特定其他容器之後啟動,請在「容器啟動順序」選單中選取這些容器。
  3. 如要使用現有工作站集區,請按照下列步驟操作:

    1. 除了 Ingress 容器,請為所有容器設定啟動健康狀態檢查
    2. 每個容器都會顯示自己的「容器啟動順序」選單。如果容器需要先啟動其他容器才能啟動,請使用「容器啟動順序」選單選取必須先啟動的容器。
  4. 完成所有其他必要設定,然後按一下「建立」(適用於新的工作站集區) 或「部署」(適用於現有工作站集區)。等待部署完成。

gcloud

使用 Google Cloud CLI 指定啟動順序前,請先設定啟動健康狀態檢查

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 如要將多個容器部署至服務,並指定啟動順序,請執行下列指令:

  3. gcloud beta run worker-pools deploy WORKER_POOL \
         --container CONTAINER_1_NAME --image='WORKER_POOL_IMAGE'
         --container CONTAINER_2_NAME --image='SIDECAR_IMAGE' --depends-on=CONTAINER_1_NAME \
         --container CONTAINER_3_NAME --image='SIDECAR_IMAGE' --depends-on=CONTAINER_1_NAME,CONTAINER_2_NAME

    更改下列內容:

    • WORKER_POOL:工作站集區的名稱。
    • IMAGE_URL:工作站集區所含容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/worker-pool:latest
    • SIDECAR_IMAGE:補充容器映像檔的參照。

      如要在部署指令中設定每個容器,請在 container 參數後提供每個容器的設定。

查看工作站集區的容器設定

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 按一下「工作站集區」,即可顯示已部署的工作站集區清單。

  3. 按一下要檢查的 worker 集區,顯示詳細資料窗格。

  4. 按一下「Containers」(容器) 分頁標籤,即可顯示工作站集區容器設定。