設定執行個體的重新啟動政策

Cloud Run 執行個體的重新啟動政策會決定執行個體是否應重新啟動,以及重新啟動的時間。

重新啟動政策選項

選取下列其中一項重新啟動政策:

  • on-failure (預設):如果任何容器以非零狀態代碼結束,或容器發生基礎架構故障,執行個體就會重新啟動。如果是多容器執行個體,這表示任何容器發生故障都會導致整個執行個體重新啟動。
  • always:只要有容器結束,執行個體一律會重新啟動。包括以代碼 0 乾淨結束。
  • never:執行個體不會重新啟動。容器終止時,執行個體會立即轉換為 STOPPEDFAILED 狀態。

為執行個體設定 alwayson-failure 重新啟動政策後,執行個體會在約 7 天的生命週期結束時自動重新啟動,因此除非遭到其他中斷,否則會無限期執行。

必要的角色

如要取得設定及部署 Cloud Run 執行個體所需的權限,請要求管理員授予您下列 IAM 角色:

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

設定重新啟動政策

使用 Google Cloud CLI 或 YAML,設定 Cloud Run 執行個體的重新啟動政策:

gcloud

如要在部署新執行個體時指定重新啟動政策,請按照下列步驟操作:

gcloud beta run instances deploy INSTANCE \
    --image=IMAGE_URL \
    --restart-policy=POLICY

如要更新現有執行個體的重新啟動政策,請按照下列步驟操作:

gcloud beta run instances update INSTANCE \
    --restart-policy=POLICY

更改下列內容:

  • INSTANCE:執行個體的名稱。
  • IMAGE_URL:容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/hello:latest
  • POLICY:要套用的重新啟動政策。選擇 on-failurealwaysnever

YAML

  1. 如果您要建立新執行個體,請略過這個步驟。 如要更新現有執行個體,請下載其 YAML 設定

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. 以下範例包含 YAML 設定:

    apiVersion: run.googleapis.com/v1
    kind: Instance
    metadata:
      name: INSTANCE
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      containers:
      - name: CONTAINER_NAME
        image: IMAGE_URL
      restartPolicy: POLICY

    更改下列內容:

    • INSTANCE:Cloud Run 執行個體的名稱。
    • CONTAINER_NAME:容器名稱。
    • IMAGE_URL:容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/hello:latest
    • POLICY:要套用的重新啟動政策。選擇 on-failurealwaysnever
  3. 使用下列指令建立或更新執行個體:

    gcloud beta run instances replace instance.yaml