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 codice0.never: l'istanza non viene mai riavviata. Quando un container termina, l'istanza passa immediatamente allo statoSTOPPEDoFAILED.
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:
- Sviluppatore Cloud Run (
roles/run.developer) sull'istanza Cloud Run - Utente account di servizio (
roles/iam.serviceAccountUser) sull'identità di servizio
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 esempious-docker.pkg.dev/cloudrun/container/hello:latest.POLICY: la policy di riavvio da applicare. Scegli traon-failure,alwaysonever.
YAML
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
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 esempious-docker.pkg.dev/cloudrun/container/hello:latest.POLICY: la policy di riavvio da applicare. Scegli traon-failure,alwaysonever.
Crea o aggiorna l'istanza utilizzando il seguente comando:
gcloud beta run instances replace instance.yaml