Guia de início rápido: implemente uma função do Cloud Run usando a Google Cloud consola

Esta página mostra-lhe como implementar uma função HTTP do Cloud Run através da consola Google Cloud .

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry, Cloud Build, Cloud Run Admin API, and Cloud Logging APIs.

    Enable the APIs

  5. Make sure that you have the following role or roles on the project: Cloud Run Admin, Cloud Run Source Developer, Logs Viewer

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Aceder ao IAM
    2. Selecione o projeto.
    3. Clique em Conceder acesso.
    4. No campo Novos responsáveis, introduza o identificador do utilizador. Normalmente, este é o endereço de email de uma Conta Google.

    5. Na lista Selecionar uma função, selecione uma função.
    6. Para conceder funções adicionais, clique em Adicionar outra função e adicione cada função adicional.
    7. Clique em Guardar.
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Artifact Registry, Cloud Build, Cloud Run Admin API, and Cloud Logging APIs.

    Enable the APIs

  9. Make sure that you have the following role or roles on the project: Cloud Run Admin, Cloud Run Source Developer, Logs Viewer

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Aceder ao IAM
    2. Selecione o projeto.
    3. Clique em Conceder acesso.
    4. No campo Novos responsáveis, introduza o identificador do utilizador. Normalmente, este é o endereço de email de uma Conta Google.

    5. Na lista Selecionar uma função, selecione uma função.
    6. Para conceder funções adicionais, clique em Adicionar outra função e adicione cada função adicional.
    7. Clique em Guardar.
  10. Se estiver ao abrigo de uma política da organização de restrição de domínio que restringe as invocações não autenticadas para o seu projeto, tem de aceder ao serviço implementado conforme descrito em Testar serviços privados.

  11. Certifique-se de que tem a função Utilizador da conta de serviço concedida na identidade de serviço. Por predefinição, a identidade do serviço é a conta de serviço predefinida do Compute Engine.

    Conceda as funções

    Para conceder acesso ao recurso de identidade do serviço, use o comando gcloud iam service-accounts add-iam-policy-binding, substituindo as variáveis realçadas pelos valores adequados:

          gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_EMAIL \
              --member="PRINCIPAL" \
              --role="roles/iam.serviceAccountUser"
          

    Substitua o seguinte:

    • SERVICE_ACCOUNT_EMAIL: o endereço de email da conta de serviço que está a usar como identidade de serviço, como:
      • A conta de serviço predefinida do Compute Engine: PROJECT_NUMBER-compute@developer.gserviceaccount.com
      • Uma conta de serviço que criou: SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    • PRINCIPAL: o identificador do utilizador. Normalmente, este é o endereço de email de uma Conta Google.
  12. Conceda à conta de serviço do Cloud Build a seguinte função do IAM.

    Clique para ver as funções necessárias para a conta de serviço do Cloud Build

    O Cloud Build usa automaticamente a conta de serviço predefinida do Compute Engine como a conta de serviço predefinida do Cloud Build para compilar o seu código-fonte e o recurso do Cloud Run, a menos que substitua este comportamento. Para que o Cloud Build compile as suas origens, peça ao administrador para conceder a função Cloud Run Builder (roles/run.builder) à conta de serviço predefinida do Compute Engine no seu projeto:

      gcloud projects add-iam-policy-binding PROJECT_ID \
          --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \
          --role=roles/run.builder
      

    Substitua PROJECT_NUMBER pelo seu Google Cloud número do projeto e PROJECT_ID pelo seu Google Cloud ID do projeto. Para ver instruções detalhadas sobre como encontrar o ID e o número do projeto, consulte o artigo Criar e gerir projetos.

    A concessão da função de criador do Cloud Run à conta de serviço predefinida do Compute Engine demora alguns minutos a propagar.

  13. Implemente a função

    Importante: este início rápido pressupõe que tem funções de proprietário ou editor no projeto que está a usar para o início rápido. Caso contrário, consulte a função de programador de origem do Cloud Run para ver as autorizações necessárias para implementar um recurso do Cloud Run a partir da origem.

    Para implementar uma função, siga estes passos:

    1. Na Google Cloud consola, aceda à página do Cloud Run:

      Aceda ao Cloud Run

    2. Clique em Escrever uma função.

    3. No campo Nome do serviço, introduza um nome do serviço para descrever a sua função, como my-nodejs-http-function. Os nomes dos serviços só podem começar por uma letra e conter até 49 carateres, incluindo letras, números ou hífenes. Os nomes dos serviços não podem terminar com hífenes e têm de ser exclusivos por região e projeto. Não é possível alterar o nome de um serviço posteriormente, e este é visível publicamente.

    4. Na lista Região, use o valor predefinido europe-west1 ou selecione a região onde quer implementar a sua função.

    5. Na lista Tempo de execução, use o valor predefinido ou selecione uma versão de tempo de execução.

    6. Na secção Autenticação, selecione Permitir acesso público. Se não tiver autorizações (função de administrador do Cloud Run) para selecionar esta opção, o serviço é implementado e requer autenticação.

    7. Clique em Criar e aguarde que o Cloud Run crie o serviço com uma revisão de marcador de posição. A consola redireciona para o separador Origem, onde pode ver o código-fonte da sua função.

    8. No separador Origem, clique em Guardar e voltar a implementar. Opcionalmente, clique em Mostrar payload para ver o objeto de pedido recebido.

    9. Após a implementação, o URL do contentor é apresentado junto ao texto URL:. Para ver o resultado da função, clique em Copiar para a área de transferência para copiar o respetivo URL e cole-o na barra de endereço do navegador.

    Localizações do Cloud Run

    O Cloud Run é regional, o que significa que a infraestrutura que executa os seus serviços do Cloud Run está localizada numa região específica e é gerida pela Google para estar disponível de forma redundante em todas as zonas dessa região.

    O cumprimento dos requisitos de latência, disponibilidade ou durabilidade são fatores principais para selecionar a região onde os seus serviços do Cloud Run são executados. Geralmente, pode selecionar a região mais próxima dos seus utilizadores, mas deve considerar a localização dos outros Google Cloudprodutos usados pelo seu serviço do Cloud Run. A utilização Google Cloud de produtos em conjunto em várias localizações pode afetar a latência do seu serviço, bem como o custo.

    O Cloud Run está disponível nas seguintes regiões:

    Sujeito aos preços de Nível 1

    • asia-east1 (Taiwan)
    • asia-northeast1 (Tóquio)
    • asia-northeast2 (Osaca)
    • asia-south1 (Mumbai, Índia)
    • europe-north1 (Finlândia) ícone de folha Baixo CO2
    • europe-north2 (Estocolmo) ícone de folha Baixo CO2
    • europe-southwest1 (Madrid) ícone de folha Baixo CO2
    • europe-west1 (Bélgica) ícone de folha Baixo CO2
    • europe-west4 (Países Baixos) ícone de folha Baixo CO2
    • europe-west8 (Milão)
    • europe-west9 (Paris) ícone de folha Baixo CO2
    • me-west1 (Telavive)
    • northamerica-south1 (México)
    • us-central1 (Iowa) ícone de folha Baixo CO2
    • us-east1 (Carolina do Sul)
    • us-east4 (Virgínia do Norte)
    • us-east5 (Columbus)
    • us-south1 (Dallas) ícone de folha Baixo CO2
    • us-west1 (Oregão) ícone de folha Baixo CO2

    Sujeito aos preços de Nível 2

    • africa-south1 (Joanesburgo)
    • asia-east2 (Hong Kong)
    • asia-northeast3 (Seul, Coreia do Sul)
    • asia-southeast1 (Singapura)
    • asia-southeast2 (Jacarta)
    • asia-south2 (Deli, Índia)
    • australia-southeast1 (Sydney)
    • australia-southeast2 (Melbourne)
    • europe-central2 (Varsóvia, Polónia)
    • europe-west10 (Berlim) ícone de folha Baixo CO2
    • europe-west12 (Turim)
    • europe-west2 (Londres, Reino Unido) ícone de folha Baixo CO2
    • europe-west3 (Frankfurt, Alemanha)
    • europe-west6 (Zurique, Suíça) ícone de folha Baixo CO2
    • me-central1 (Doha)
    • me-central2 (Dammam)
    • northamerica-northeast1 (Montreal) ícone de folha Baixo CO2
    • northamerica-northeast2 (Toronto) ícone de folha Baixo CO2
    • southamerica-east1 (São Paulo, Brasil) ícone de folha Baixo CO2
    • southamerica-west1 (Santiago, Chile) ícone de folha Baixo CO2
    • us-west2 (Los Angeles)
    • us-west3 (Salt Lake City)
    • us-west4 (Las Vegas)

    Se já criou um serviço do Cloud Run, pode ver a região no painel de controlo do Cloud Run na Google Cloud consola.

    Limpar

    Embora o Cloud Run não cobre quando o serviço não está em utilização, ainda pode ser-lhe cobrado o armazenamento da imagem do contentor no Artifact Registry. Pode eliminar a imagem do contentor ou eliminar o Google Cloud projeto para evitar incorrer em custos. A eliminação do seu Google Cloud projeto interrompe a faturação de todos os recursos usados nesse projeto.

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    O que se segue?