設定工作的重試次數上限

Cloud Run 工作包含一或多項工作。「重試次數上限」設定可指定工作在永久失敗前,允許重新啟動的次數。預設值為 3。

這項設定適用於每個工作,而非每個作業。如果設為 0,工作只會執行一次,失敗時不會重試。

必要的角色

如要取得設定 Cloud Run 作業所需的權限,請要求管理員授予您下列 IAM 角色:

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

設定重試次數上限

您可以使用Google Cloud 控制台、gcloud CLI、YAML 或 Terraform,為 Cloud Run 工作設定重試次數上限:

控制台

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

    前往 Cloud Run。

  2. 從 Cloud Run 導覽選單中選取「作業」:

    1. 如要建立新工作,請按一下「Deploy container」(部署容器),填寫初始工作設定頁面。

    2. 如要設定現有工作,請選取該工作,然後按一下「View and edit job configuration」(查看及編輯工作設定)。

  3. 按一下「容器、連線、安全性」,展開工作屬性頁面。

  4. 在「工作容量」部分,使用 0 到 10 的整數指定重試次數。

  5. 按一下「建立」或「更新」。

gcloud

  • 如要在建立新工作時設定重試次數上限,請執行下列指令:

    gcloud run jobs create JOB --image IMAGE_URL --max-retries RETRY

    更改下列內容:

    • JOB:Cloud Run 工作名稱。
    • IMAGE_URL:容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/job:latest。
    • RETRY:重試次數。指定介於 0 至 10 的整數。
  • 如要更新現有工作的重試次數上限,請執行下列指令:

    gcloud run jobs update JOB --max-retries RETRY

YAML

  1. 如要建立新工作,請略過這個步驟。 如要更新現有工作,請下載其 YAML 設定:

    gcloud run jobs describe JOB --format export > job.yaml
  2. 更新 maxRetries: 屬性:

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE_URL
              maxRetries: RETRY

    更改下列內容:

    • JOB:Cloud Run 工作名稱。
    • IMAGE_URL:容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/job:latest。
    • RETRY:重試次數。指定介於 0 至 10 的整數。
  3. 使用下列指令建立或更新作業:

    gcloud run jobs replace job.yaml

    gcloud run jobs replace 指令預設會使用 job.yaml 檔案 (如有)。

Terraform

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

在 Terraform 設定的 google_cloud_run_v2_job 資源中新增下列項目:
resource "google_cloud_run_v2_job" "default" {
  name     = "cloud-run-job-retries"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    template {
      max_retries = 3

      containers {
        image = "us-docker.pkg.dev/cloudrun/container/job:latest"
      }
    }
  }
}

查看重試次數上限設定

如要查看 Cloud Run 作業目前的重試次數上限設定,請使用 Google Cloud 控制台或 Google Cloud CLI:

控制台

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

    前往 Cloud Run jobs

  2. 按一下工作,開啟「工作詳細資料」頁面。

  3. 按一下「查看及編輯工作設定」。

  4. 在設定詳細資料中找出重試次數上限設定。

gcloud

  1. 執行下列指令:

    gcloud run jobs describe JOB
  2. 在傳回的設定中找出重試次數上限設定。