Nesta página, descrevemos como configurar variáveis de ambiente para seu pool de workers do Cloud Run.
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem essa configuração de modo automático, a menos que você faça atualizações explícitas para alterar esse comportamento.
Funções exigidas
Para receber as permissões necessárias para configurar e implantar pools de trabalhadores do Cloud Run, peça ao administrador para conceder a você os seguintes papéis do IAM:
-
Desenvolvedor do Cloud Run (
roles/run.developer
) no pool de worker 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 o pool de trabalhadores do Cloud Run interagir com APIs doGoogle Cloud , 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.
Defina as variáveis de ambiente
É possível definir variáveis de ambiente para um pool de trabalhadores do Cloud Run usando o consoleGoogle Cloud , a Google Cloud CLI ou o Terraform:
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Pools de workers no menu e clique em Implantar contêiner para configurar um novo pool de workers. Se você estiver configurando um pool de workers atual, clique nele e em Editar e implantar nova revisão.
Se você estiver configurando um novo pool de workers, preencha a página inicial do pool e clique em Contêineres, volumes, Rede e segurança para expandir a página de configuração de pools de workers.
Clique na guia Contêiner.
- Na guia "Variáveis e secrets", clique em Adicionar variável para adicionar uma nova variável de ambiente. Em seguida, especifique o nome que você quer para a variável nos campos Nome e Valor. Para mais informações sobre como definir várias variáveis de ambiente ou usar caracteres de escape, consulte Definir várias variáveis de ambiente.
Clique em Criar ou Implantar.
gcloud
Para especificar variáveis de ambiente ao implantar o pool de trabalhadores, use a flag
--set-env-vars
:
gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --set-env-vars KEY1=VALUE1,KEY2=VALUE2
Substitua:
- WORKER_POOL: o nome do pool de workers
- KEY1=VALUE1,KEY2=VALUE2: a lista separada por vírgulas de nomes e valores de variáveis
- IMAGE_URL: uma referência à imagem de contêiner que
contém o pool de workers, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
Para mais informações sobre como definir várias variáveis de ambiente ou usar caracteres de escape especiais, consulte Definir várias variáveis de ambiente.
Terraform
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
resource "google_cloud_run_v2_worker_pool" "default" {
name = "WORKER_POOL"
location = "REGION"
launch_stage = "BETA"
template {
containers {
image = "IMAGE_URL"
env {
name = "KEY1"
value = "VALUE1"
}
env {
name = "KEY2"
value = "VALUE2"
}
}
}
}
Substitua:
- WORKER_POOL: o nome do pool de workers.
- REGION: a região Google Cloud , por exemplo,
europe-west1
- IMAGE_URL: uma referência à imagem de contêiner que
contém o pool de workers, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
- KEY1 e VALUE1: a variável de ambiente e o valor. Se quiser, adicione mais variáveis e valores.
Como definir variáveis de ambiente padrão no contêiner
Use a instrução ENV
em um Dockerfile para definir valores padrão para variáveis de ambiente:
ENV KEY1=VALUE1,KEY2=VALUE2
Ordem de precedência: variáveis de contêiner x pool de workers
Se você definir uma variável de ambiente padrão no contêiner e também definir uma variável de ambiente com o mesmo nome no pool de workers do Cloud Run, o valor definido no pool de workers terá precedência.
Definir várias variáveis de ambiente
É possível definir várias variáveis de ambiente usando o arquivo .env
ou a
flag --set-env-vars
.
Definir várias variáveis de ambiente usando o arquivo .env
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Pools de workers no menu e clique em Implantar contêiner para configurar um novo pool de workers. Se você estiver configurando um pool de workers atual, clique nele e em Editar e implantar nova revisão.
Se você estiver configurando um novo pool de workers, preencha a página inicial do pool e clique em Contêineres, volumes, Rede e segurança para expandir a página de configuração de pools de workers.
Clique na guia Contêiner.
- Na guia "Variáveis e secrets", clique em Adicionar variável e cole o conteúdo do arquivo
.env
no campo Nome. O Cloud Run preenche automaticamente o campo Valor e cria novas variáveis para cada par de chave-valor definido no arquivo.env
.
- Na guia "Variáveis e secrets", clique em Adicionar variável e cole o conteúdo do arquivo
Clique em Criar ou Implantar.
gcloud
Para especificar várias variáveis de ambiente do arquivo .env
, execute o seguinte comando:
gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --env-vars-file=ENV_FILE_PATH
Substitua:
- WORKER_POOL: o nome do pool de workers.
- IMAGE_URL: uma referência à imagem de contêiner que
contém o pool de workers, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
- ENV_FILE_PATH: caminho para o arquivo
.env
.
Definir várias variáveis de ambiente usando a flag --set-env-vars
Se você tiver várias variáveis de ambiente que não podem ser listadas no formato KEY1=VALUE1,KEY2=VALUE2
, repita a flag --set-env-vars
várias vezes:
[...] --set-env-vars "KEY1=VALUE1" \ --set-env-vars "KEY2=VALUE2" \ --set-env-vars "KEY3=VALUE3"
Escape de caracteres de vírgula
Como o caractere de vírgula,
é usado para dividir variáveis de ambiente, caso a variável de ambiente contenha caracteres de vírgula como valores, você precisará fazer o escape desses delimitadores especificando um caractere delimitador diferente, por exemplo, @
:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."
Atualizar variáveis de ambiente
É possível atualizar variáveis de ambiente de execução para pools de workers atuais. Essa é uma abordagem não destrutiva que altera ou adiciona variáveis de ambiente de execução, mas não as exclui.
É possível atualizar variáveis de ambiente no Google Cloud console, na Google Cloud CLI ou no Terraform:
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Pools de workers no menu, clique no pool que você está atualizando e em Editar e implantar nova revisão.
Clique em Contêineres, volumes, rede, segurança para expandir a página de configuração dos pools de workers.
Clique na guia Variáveis e secrets.
Localize a variável de ambiente que você quer atualizar e especifique um nome ou valor diferente nos campos Nome e Valor.
Clique em Implantar.
gcloud
Para atualizar as variáveis de ambiente de um pool de worker atual, use a
flag --update-env-vars
:
gcloud beta run worker-pools update WORKER_POOL --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Substitua:
- WORKER_POOL: o nome do pool de workers
- KEY1=VALUE1,KEY2=VALUE2: a lista separada por vírgulas de nomes e valores de variáveis
Terraform
Para atualizar as variáveis de ambiente de um pool de workers atual, abra o arquivo main.tf
correspondente ao pool de workers e edite as variáveis de nome e valor.
Em seguida, execute o comando para aplicar a configuração do Terraform.
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
Excluir variáveis de ambiente
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Pools de workers no menu, clique no pool que você está atualizando e em Editar e implantar nova revisão.
Clique em Contêineres, volumes, rede, segurança para expandir a página de configuração dos pools de workers.
Clique na guia Variáveis e secrets.
Localize a variável de ambiente que você quer excluir e clique no ícone de lixeira à direita do campo Valor para excluir a variável.
Clique em Implantar.
gcloud
Para remover seletivamente variáveis de ambiente de um pool de worker atual, use a flag
--remove-env-vars
:
gcloud beta run worker-pools update WORKER_POOL --remove-env-vars KEY1,KEY2
Substitua:
- WORKER_POOL: o nome do pool de workers
- KEY1,KEY2: a lista de nomes de variáveis separada por vírgulas
Como alternativa, limpe todas as variáveis de ambiente definidas anteriormente
com a flag --clear-env-vars
:
gcloud beta run worker-pools update WORKER_POOL --clear-env-vars
Substitua WORKER_POOL pelo nome do pool de workers.
Ver a configuração da variável de ambiente para o pool de workers
No Google Cloud console, acesse o Cloud Run:
Clique em Pools de workers para mostrar a lista de pools de workers implantados.
Clique no pool de workers que você quer examinar para mostrar o painel de detalhes.
Clique na guia Contêineres para mostrar a configuração do contêiner do pool de workers.
Código de amostra
Para ver um exemplo de código que mostra como acessar as variáveis de ambiente no código, consulte Como processar a configuração confidencial com o Gerenciador de segredos no tutorial de autenticação de usuário final.
A seguir
É possível usar variáveis de ambiente para definir uma configuração de buildpacks. Para detalhes específicos da linguagem, consulte a documentação de buildpacks para: