A política de reinicialização da instância do Cloud Run determina se e quando a instância será reiniciada.
Opções de política de reinicialização
Selecione uma das seguintes políticas de reinicialização:
on-failure(padrão): se algum contêiner sair com um código de status diferente de zero ou se o contêiner apresentar falhas de infraestrutura, a instância será reiniciada. Para instâncias de vários contêineres, isso significa que qualquer contêiner com falha faz com que toda a instância seja reiniciada.always: quando qualquer contêiner sai, a instância sempre é reiniciada. Isso inclui saídas limpas com o código0.never: a instância nunca é reiniciada. Quando qualquer contêiner é encerrado, a instância faz a transição imediatamente para um estadoSTOPPEDouFAILED.
Quando você configura a política de reinicialização always ou on-failure para sua instância, ela é reiniciada automaticamente no final de um ciclo de vida de aproximadamente sete dias, sendo executada indefinidamente, a menos que seja interrompida de outra forma.
Funções exigidas
Para receber as permissões necessárias para configurar e implantar instâncias do Cloud Run, peça ao administrador para conceder a você as seguintes funções do IAM:
- Desenvolvedor do Cloud Run (
roles/run.developer) na instância do Cloud Run - Usuário da conta de serviço (
roles/iam.serviceAccountUser) na identidade do serviço
Para uma lista de papéis e permissões do IAM associados ao Cloud Run, consulte Papéis do IAM do Cloud Run e Permissões do IAM do Cloud Run. Se a instância do Cloud Run interage com Google Cloud APIs, como as bibliotecas de cliente do Cloud, consulte o guia de configuração de identidade de serviço. Para mais informações sobre como conceder papéis, consulte permissões de implantação e gerenciar acesso.
Configurar a política de reinicialização
Configure a política de reinicialização de uma instância do Cloud Run usando a Google Cloud CLI ou o YAML:
gcloud
Para especificar uma política de reinicialização ao implantar uma nova instância:
gcloud beta run instances deploy INSTANCE \ --image=IMAGE_URL \ --restart-policy=POLICY
Para atualizar a política de reinicialização de uma instância atual:
gcloud beta run instances update INSTANCE \ --restart-policy=POLICY
Substitua:
INSTANCE: o nome da instância.IMAGE_URL: uma referência à imagem de contêiner, comous-docker.pkg.dev/cloudrun/container/hello:latest.POLICY: a política de reinicialização a ser aplicada. Escolha entreon-failure,alwaysounever.
YAML
Se você estiver criando uma nova instância, pule esta etapa. Se você estiver atualizando uma instância atual, baixe a configuração YAML correspondente:
gcloud beta run instances describe INSTANCE --format export > instance.yaml
O exemplo a seguir contém a configuração 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
Substitua:
INSTANCE: o nome da instância do Cloud Run.CONTAINER_NAME: o nome do contêiner.IMAGE_URL: uma referência à imagem de contêiner, comous-docker.pkg.dev/cloudrun/container/hello:latest.POLICY: a política de reinicialização a ser aplicada. Escolha entreon-failure,alwaysounever.
Crie ou atualize a instância usando o comando a seguir:
gcloud beta run instances replace instance.yaml