A função do Cloud Run é executada em um ambiente que consiste em uma versão do sistema operacional com pacotes complementares, suporte a linguagens e a biblioteca Go Functions Framework que dá suporte e invoca a função. Esse ambiente é identificado pela versão da linguagem e é conhecido como ID de execução.
Preparação de funções
É possível preparar uma função diretamente do console do Google Cloud ou gravá-la na máquina local e fazer upload dela. Para preparar a máquina local para o desenvolvimento do Go, consulte Configurar um ambiente de desenvolvimento do Go.
Ambientes de execução e imagens de base do Go compatíveis
Ambiente de execução | ID do ambiente de execução | Pilhas | Imagem de base do ambiente de execução |
---|---|---|---|
Go 1.23 (apenas pré-lançamento) |
go123 |
|
|
Go 1.22 | go122 |
|
|
Go 1.21 | go121 |
|
|
Go 1.20 | go120 |
|
|
Go 1.19 | go119 |
|
|
Go 1.18 | go118 |
|
|
Go 1.16 | go116 | google-18-full | google-18-full/go116 |
Go 1.13 | go113 | google-18-full | google-18-full/go113 |
Go 1.11 | go111 | Desativado | Desativado |
Selecionar o ambiente de execução
Selecione um dos ambientes de execução do Go com suporte para a função durante a implantação.
É possível selecionar uma versão do ambiente de execução usando o console do Google Cloud ou a CLI gcloud. Clique na guia para conferir instruções sobre como usar a ferramenta de sua preferência:
gcloud
Especifique a imagem de base do Go para a função usando a flag --base-image
durante a implantação. Exemplo:
gcloud beta run deploy FUNCTION \
--source . \
--function FUNCTION_ENTRYPOINT \
--base-image go122
Substitua:
FUNCTION pelo nome da função que você está implantando. É possível omitir esse parâmetro inteiramente, mas será solicitado o nome, se você omiti-lo.
FUNCTION_ENTRYPOINT: o ponto de entrada da função no código-fonte. Esse é o código que o Cloud Run executa quando é executada. O valor dessa sinalização precisa ser um nome de função ou de classe totalmente qualificada no código-fonte.
Para instruções detalhadas sobre como implantar uma função usando a CLI gcloud, consulte Implantar funções no Cloud Run.
Console
É possível selecionar uma versão do ambiente de execução ao criar ou atualizar uma função do Cloud Run no console do Google Cloud. Para instruções detalhadas sobre como implantar uma função, consulte Implantar funções no Cloud Run.
Para selecionar um ambiente de execução no console do Google Cloud ao criar uma função, siga estas etapas:
No console do Google Cloud, acesse a página do Cloud Run:
Clique em Escrever uma função.
Na lista Ambiente de execução, selecione uma versão do ambiente de execução do Go.
Clique em Criar e aguarde o Cloud Run criar o serviço usando uma revisão do marcador de posição.
O console vai redirecionar você para a guia Origem, em que você pode ver o código-fonte da sua função. Clique em Salvar e implantar novamente.
Para instruções detalhadas sobre como atualizar a versão do ambiente de execução depois que a função for implantada, consulte Reimplantar o novo código-fonte.
Estrutura do código-fonte
Para que as funções do Cloud Run encontrem a definição da sua função, seu código-fonte precisa seguir uma estrutura específica. Consulte Escrever funções do Cloud Run para mais informações.
Especificar as dependências
O Cloud Run functions no Go precisa fornecer todas as respectivas dependências com
módulos Go e um arquivo go.mod
ou com um diretório vendor
. Para
mais informações, consulte Especificar dependências no Go.
Variáveis de ambiente
O ambiente de execução do Go define automaticamente certas variáveis de ambiente para que sua função use conforme necessário. Para mais detalhes, consulte Configurar variáveis de ambiente.
Context
tipo
O pacote context
do Go define o tipo de Context
,
que transporta prazos, sinais de cancelamento e outros valores do escopo
de solicitações entre limites de APIs e entre processos.
O código a seguir mostra um exemplo de acesso ao contexto por um cliente do Pub/Sub: