Este documento descreve como implantar seus aplicativos, incluindo serviços, jobs e pools de trabalhadores do Cloud Run.
Com o Cloud Deploy, é possível implantar suas cargas de trabalho baseadas em contêineres em qualquer serviço, job ou pool de trabalhadores do Cloud Run. Todos os recursos do Cloud Deploy são compatíveis quando você implanta em destinos do Cloud Run para serviços ou pools de trabalhadores do Cloud Run, mas as implantações canário não são compatíveis com jobs do Cloud Run.
Este documento descreve as três principais configurações que você precisa concluir para implantar no Cloud Run:
- Criar a configuração de destino
- Criar sua configuração do Skaffold
- Crie suas definições de serviço, definições de job ou definições de pool de workers do Cloud Run.
Limitações
Só é possível implantar um serviço, job ou pool de workers do Cloud Run por destino.
Não é possível executar uma implantação canário em um job do Cloud Run.
No entanto, os serviços do Cloud Run e os pools de workers podem usar uma implantação canário.
Para implantar uma função do Cloud Run usando o Cloud Deploy, é necessário modificar seu fluxo de trabalho de CI para criar a função em um contêiner e implantá-la como um serviço do Cloud Run.
Antes de começar
Verifique se você está usando a CLI gcloud na versão
541.0.0ou mais recente.
Crie sua configuração de destino
O destino pode ser configurado no YAML do pipeline de entrega ou em um arquivo separado. Além disso, é possível configurar mais de uma meta no mesmo arquivo.
Os destinos precisam ser definidos no mesmo projeto e região que o pipeline de entrega. No entanto, os serviços, jobs ou pools de workers em que os destinos são implantados podem estar em projetos e regiões diferentes, desde que a conta de serviço tenha acesso a esses projetos.
Na definição de destino, crie uma estrofe run para identificar o local em que o serviço do Cloud Run será criado.
A sintaxe para especificar o serviço, o job ou o pool de trabalhadores do Cloud Run na definição de destino é a seguinte:
run:
location: projects/[project_name]/locations/[region_name]
Esse identificador de recurso usa os seguintes elementos:
project_nameé o nome do projeto Google Cloud em que o serviço, o job ou o pool de workers do Cloud Run será criado.Faça isso para cada meta. Recomendamos um projeto diferente para cada serviço, job ou pool de workers do Cloud Run. Se você quiser mais de um serviço, job ou pool de workers no mesmo projeto, use perfis do Skaffold no arquivo de configuração
skaffold.yaml.region_nameé a região em que o serviço, o job ou o pool de workers será criado. Seu serviço, job ou pool de workers pode estar em qualquer região compatível com o Cloud Run.
Confira a seguir um exemplo de configuração de destino, definindo o serviço, job ou pool de workers do Cloud Run a ser criado:
apiVersion: deploy.cloud.google.com/v1
kind: Target
metadata:
name: dev
description: development service
run:
location: projects/my-app/locations/us-central1
É possível definir esse destino em uma definição de pipeline de entrega do Cloud Deploy ou separadamente. De qualquer forma, é necessário