Configura il criterio di riavvio per le istanze

La policy di riavvio dell'istanza Cloud Run determina se e quando l'istanza deve essere riavviata.

Opzioni della policy di riavvio

Seleziona una delle seguenti policy di riavvio:

  • on-failure (impostazione predefinita): se un container esce con un codice di stato diverso da zero o se il container riscontra errori dell'infrastruttura, l'istanza viene riavviata. Per le istanze multi-container, ciò significa che l'errore di un container causa il riavvio dell'intera istanza.
  • always: quando un container esce, l'istanza viene sempre riavviata. Sono inclusi gli arresti puliti con il codice 0.
  • never: l'istanza non viene mai riavviata. Quando un container termina, l'istanza passa immediatamente allo stato STOPPED o FAILED.

Quando configuri la policy di riavvio always o on-failure per l'istanza, questa viene riavviata automaticamente al termine di un ciclo di vita di circa 7 giorni, quindi viene eseguita a tempo indeterminato, a meno che non venga interrotta in altro modo.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per configurare ed eseguire il deployment di istanze Cloud Run, chiedi all'amministratore di concederti i seguenti ruoli IAM:

Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM di Cloud Run e Autorizzazioni IAM di Cloud Run. Se la tua istanza Cloud Run interagisce con Google Cloud API, come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per saperne di più sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestisci l'accesso.

Configura la policy di riavvio

Configura la policy di riavvio per un'istanza Cloud Run utilizzando Google Cloud CLI o YAML:

gcloud

Per specificare una policy di riavvio durante il deployment di una nuova istanza:

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

Per aggiornare la policy di riavvio di un'istanza esistente:

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

Sostituisci quanto segue:

  • INSTANCE: il nome dell'istanza.
  • IMAGE_URL: un riferimento all'immagine container, ad esempio us-docker.pkg.dev/cloudrun/container/hello:latest.
  • POLICY: la policy di riavvio da applicare. Scegli tra on-failure, always o never.

YAML

  1. Se stai creando una nuova istanza, salta questo passaggio. Se stai aggiornando un'istanza esistente, scarica la sua configurazione YAML:

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. L'esempio seguente contiene la configurazione 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

    Sostituisci quanto segue:

    • INSTANCE: il nome dell'istanza Cloud Run.
    • CONTAINER_NAME: il nome del container.
    • IMAGE_URL: un riferimento all'immagine container, ad esempio us-docker.pkg.dev/cloudrun/container/hello:latest.
    • POLICY: la policy di riavvio da applicare. Scegli tra on-failure, always o never.
  3. Crea o aggiorna l'istanza utilizzando il seguente comando:

    gcloud beta run instances replace instance.yaml