Este guia oferece uma visão geral introdutória de como outros serviços do Google Cloud estão envolvidos no processo de implantação do Cloud Run functions.
Antes de começar
Conheça os conceitos de implantação de origem e funções do Cloud Run no guia Opções de implantação e modelo de recursos do Cloud Run.
Informações gerais da arquitetura
Quando você implanta o código-fonte da função do Cloud Run, ele é armazenado em um bucket do Cloud Storage. Em seguida, o Cloud Build cria automaticamente seu código em uma imagem de contêiner e a envia para um registro de imagens do Artifact Registry. As funções do Cloud Run acessam essa imagem quando precisam executar o contêiner para executar a função.
No diagrama a seguir, a caixa de funções do Cloud Run representa uma função implantada no Cloud Run usando a API Cloud Run Admin ou a API Cloud Functions. Normalmente, as funções mais recentes são implantadas usando a API Cloud Run Admin, e as mais antigas são implantadas usando a API Cloud Functions.
Dependendo da API usada ao implantar uma função, o seguinte acontece:
Se você implantou sua função usando a API Cloud Run Admin, o seguinte vai acontecer:
O código-fonte é enviado para um bucket do Cloud Storage sem período de armazenamento.
- Se você estiver usando a criptografia padrão, o nome do bucket será
gerado automaticamente e chamado de
run-sources-PROJECT_ID-REGION
. - Se você estiver protegendo seus dados com chaves de criptografia gerenciadas pelo cliente (CMEK), o nome do bucket não será gerado automaticamente, e você precisará fornecer um nome.
- Se você estiver usando a criptografia padrão, o nome do bucket será
gerado automaticamente e chamado de
O código-fonte é enviado ao Cloud Build, em que os buildpacks do Google Cloud e o Functions Framework criam uma imagem de contêiner. A conta de serviço do Cloud Build cria a imagem do contêiner. Por padrão, o Cloud Run usa o tipo de máquina
e2-standard-2
fornecido pelo Cloud Build.A imagem do contêiner é enviada para o Artifact Registry por um bucket criado automaticamente chamado
REGION-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy
.A imagem é implantada no Cloud Run como um serviço.
É possível acionar ou invocar a função com o Eventarc, o Pub/Sub ou outros gatilhos HTTP.
Se você implantou sua função usando a API Cloud Functions (v2), o seguinte vai acontecer:
O código-fonte é enviado para um bucket do Cloud Storage sem período de armazenamento.
O nome do bucket é gerado automaticamente e segue este formato:
- Se você estiver usando a criptografia padrão, esse bucket será chamado de
gcf-v2-sources-PROJECT_NUMBER-REGION
. - Se você estiver protegendo seus dados com a CMEK, o bucket será chamado de
gcf-sources-PROJECT_NUMBER-REGION-CMEK_KEY_HASH
.
- Se você estiver usando a criptografia padrão, esse bucket será chamado de
O código-fonte é enviado ao Cloud Build, em que os buildpacks do Google Cloud e o Functions Framework criam uma imagem de contêiner. A conta de serviço do Cloud Build cria a imagem do contêiner. Por padrão, o Cloud Run usa o tipo de máquina
e2-standard-2
fornecido pelo Cloud Build.A imagem do contêiner é enviada para o Artifact Registry por um bucket criado automaticamente chamado
REGION-docker.pkg.dev/PROJECT_ID/gcf-artifacts
.A imagem é implantada no Cloud Run como um serviço.
É possível acionar ou invocar a função com o Eventarc, o Pub/Sub ou outros gatilhos HTTP.
A seguir
- Saiba mais sobre os diferentes tipos de funções e as opções para acionar funções.
- Se você já criou funções com a API Cloud Functions, consulte o guia de comparação do Cloud Run functions para saber mais sobre as diferenças entre as duas versões do Cloud Run functions.