Início rápido: implemente no Cloud Run a partir de um repositório Git

Esta página mostra como implementar continuamente a partir de um repositório Git no Cloud Run.


Para seguir orientações passo a passo para esta tarefa diretamente na Google Cloud consola, clique em Orientar-me:

Visita guiada


Pode encontrar instruções completas para este processo em Implementação contínua a partir do Git com o Cloud Build.

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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

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

  4. 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.
  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

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

  7. 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.
  8. Enable the Cloud Build API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  9. Se estiver ao abrigo de uma política da organização de restrição de domínio que restringe invocações não autenticadas para o seu projeto, tem de aceder ao serviço implementado conforme descrito em Testar serviços privados.

  10. 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 de 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=user: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 da Conta Google que está a implementar o recurso do Cloud Run.
  11. Reveja os preços do Cloud Run ou estime os custos com a calculadora de preços.
  12. Crie um repositório a partir de um modelo

    Para criar um repositório:

    1. Aceda ao repositório de modelos:

    2. Clique em Usar este modelo.

    3. Selecione Criar um novo repositório.

    4. No formulário, introduza um nome do repositório.

    5. Clique em Criar repositório a partir de modelo.

    Implemente a partir do repositório

    Para implementar a partir do repositório:

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

      Aceda ao Cloud Run

    2. Selecione Serviços no menu e clique em Implementar contentor.

    3. Em Criar serviço, certifique-se de que a opção Implementar continuamente a partir de um repositório está selecionada.

    4. No formulário, clique em Configurar o Cloud Build.

    5. No painel do lado direito:

      1. Em Repositório, selecione o repositório recém-criado. Se ainda não tiver feito a autenticação, pode ter de a fazer. Use o link autenticar no campo Fornecedor do repositório.

      2. Consulte o contrato de confirmação acerca do GitHub e da Google Cloud interatividade.

      3. Clicar em Seguinte.

      4. Em Tipo de criação, selecione Google Cloud Buildpacks.

      5. Clique em Guardar.

    6. No formulário Criar serviço:

      1. Confirme o nome do serviço. É preenchido automaticamente com o nome do repositório.

      2. No menu pendente Região, selecione a região onde quer que o seu serviço esteja localizado.

      3. Em 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.

      4. Clique em Criar para implementar o repositório de exemplo no Cloud Run e aguarde pela conclusão da implementação.

    7. Clique no link do URL apresentado para executar o contentor implementado.

    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 seus 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)
    • 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.

    Atualize o serviço

    Para fazer alterações ao serviço:

    1. Enviar uma confirmação para o ramo principal do repositório.

    2. Atualize o serviço do Cloud Run para ver o estado da atualização.

    O Cloud Run dimensiona automaticamente as suas instâncias de contentores com base na procura e só paga pela CPU, pela memória e pela rede consumidas durante o processamento de pedidos.

    Limpar

    Para evitar custos adicionais na sua conta do Google Cloud , elimine todos os recursos implementados com este início rápido.

    Elimine o seu repositório

    O Cloud Run não lhe cobra nada quando o serviço implementado não está a ser usado. No entanto, ainda pode ser cobrado pelo armazenamento da imagem do contentor no Artifact Registry. Para eliminar repositórios do Artifact Registry, siga os passos em Eliminar repositórios na documentação do Artifact Registry.

    Elimine o seu serviço

    Os serviços do Cloud Run não incorrem em custos até receberem pedidos. Para eliminar o seu serviço do Cloud Run, siga um destes passos:

    Consola

    Para eliminar um serviço:

    1. Na Google Cloud consola, aceda ao Cloud Run:

      Aceda ao Cloud Run

    2. Localize o serviço que quer eliminar na lista de serviços e clique na caixa de verificação para o selecionar.

    3. Clique em Eliminar. Esta ação elimina todas as revisões do serviço.

    gcloud

    Para eliminar um serviço, execute o seguinte comando:

    gcloud run services delete SERVICE --region REGION

    Substitua o seguinte:

    • SERVICE: nome do seu serviço.
    • REGION: Google Cloud região do serviço.

    Elimine o projeto de teste

    A eliminação do seu projeto Google Cloud interrompe a faturação de todos os recursos nesse projeto. Para libertar todos os Google Cloud recursos no seu projeto, siga estes passos:

    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?