Guia de início rápido: criar e implantar um app da Web em Go no Cloud Run
Saiba como usar um único comando para criar e implantar um aplicativo da Web "Hello World" com base em um exemplo de código para Google Cloud usando o Cloud Run.
Ao seguir as etapas deste guia de início rápido, o Cloud Run cria automaticamente um Dockerfile para você quando implanta do código-fonte.
Antes de começar
- 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.
- 
      Install the Google Cloud CLI. 
- 
          Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada. 
- 
        Para inicializar a gcloud CLI, execute o seguinte comando: gcloud init
- 
  
  
    Create or select 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 theresourcemanager.projects.createpermission. Learn how to grant roles.
 - 
        Create a Google Cloud project: gcloud projects create PROJECT_ID Replace PROJECT_IDwith a name for the Google Cloud project you are creating.
- 
        Select the Google Cloud project that you created: gcloud config set project PROJECT_ID Replace PROJECT_IDwith your Google Cloud project name.
 
- 
        Se você estiver usando um projeto atual para este guia, verifique se tem as permissões necessárias para concluir este guia. Se você criou um novo projeto, já tem as permissões necessárias. 
- 
  
    Verify that billing is enabled for your Google Cloud project. 
- 
      Install the Google Cloud CLI. 
- 
          Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada. 
- 
        Para inicializar a gcloud CLI, execute o seguinte comando: gcloud init
- 
  
  
    Create or select 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 theresourcemanager.projects.createpermission. Learn how to grant roles.
 - 
        Create a Google Cloud project: gcloud projects create PROJECT_ID Replace PROJECT_IDwith a name for the Google Cloud project you are creating.
- 
        Select the Google Cloud project that you created: gcloud config set project PROJECT_ID Replace PROJECT_IDwith your Google Cloud project name.
 
- 
        Se você estiver usando um projeto atual para este guia, verifique se tem as permissões necessárias para concluir este guia. Se você criou um novo projeto, já tem as permissões necessárias. 
- 
  
    Verify that billing is enabled for your Google Cloud project. 
-  Para definir o projeto padrão do serviço do Cloud Run:
    gcloud config set project PROJECT_ID 
- Se você precisa seguir uma política da organização de restrição de domínio que restringe invocações não autenticadas para seu projeto, será necessário acessar o serviço implantado, conforme descrito em Como testar serviços particulares. 
- 
  
   
   
     
   
  
 
 
 
   
 
 
  
  
    
      Enable the Cloud Run Admin API and Cloud Build APIs: Roles required to enable APIs To enable APIs, you need the Service Usage Admin IAM role ( roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable run.googleapis.com cloudbuild.googleapis.com Depois que a API Cloud Run Admin for ativada, a conta de serviço padrão do Compute Engine será criadas automaticamente. 
- Consulte os preços do Cloud Run ou estime os custos com a calculadora de preços.
- 
  
  
    
      Administrador do Cloud Run  (roles/run.admin) no projeto
- 
  
  
    
      Desenvolvedor de origem do Cloud Run  (roles/run.sourceDeveloper) no projeto
- 
  
  
    
      Leitor de registros   (roles/logging.logsViewer) no projeto
- 
  
  
    
      Administrador do IAM do projeto   (roles/resourcemanager.projectIamAdmin) no projeto
- 
  
  
    
      Usuário da conta de serviço   (roles/iam.serviceAccountUser) na identidade de serviço. Por padrão, essa é a conta de serviço padrão do Compute Engine.
- Crie um novo diretório com o nome - helloworlde altere o diretório nele:- mkdir helloworld cd helloworld
- Inicialize um arquivo - go.modno diretório do projeto para declarar o módulo go:- go mod init github.com/GoogleCloudPlatform/golang-samples/run/helloworld
- Crie um novo arquivo chamado - main.goe cole o código a seguir nele:- Esse código cria um servidor da Web básico que realiza detecções na porta definida pela variável de ambiente - PORT.
- No diretório do código-fonte, implante a pasta atual usando o seguinte comando: - gcloud run deploy --source . - Quando o nome do serviço for solicitado, pressione "Enter" para aceitar o nome padrão, por exemplo, - helloworld.
- Se for solicitado que você ative APIs adicionais no projeto, por exemplo, a API Artifact Registry, responda pressionando - y:
- Quando a região for solicitada, selecione a região que preferir, por exemplo, - europe-west1.
- Se você for solicitado a criar um repositório na região especificada, responda pressionando - y.
- Se for solicitado que você permita acesso público, siga estas etapas: responda - y. Se houver um domínio, você não vai receber essa solicitação e a política de restrição da organização que impede isso. Para mais detalhes, consulte a seção Antes de começar.
 - Aguarde alguns instantes até a conclusão da implantação. Em caso de sucesso, a linha de comando exibe o URL de serviço. 
- Consulte o contêiner implantado abrindo o URL de serviço em um navegador da Web. 
- asia-east1(Taiwan)
- asia-northeast1(Tóquio)
- asia-northeast2(Osaka)
- asia-south1(Mumbai, Índia)
- europe-north1(Finlândia)- Baixo CO2 
- europe-north2(Estocolmo)- Baixo CO2 
- europe-southwest1(Madri)- Baixo CO2 
- europe-west1(Bélgica)- Baixo CO2 
- europe-west4(Países Baixos)- Baixo CO2 
- europe-west8(Milão)
- europe-west9(Paris)- Baixo CO2 
- me-west1(Tel Aviv)
- northamerica-south1(México)
- us-central1(Iowa)- Baixo CO2 
- us-east1(Carolina do Sul)
- us-east4(Norte da Virgínia)
- us-east5(Columbus)
- us-south1(Dallas)- Baixo CO2 
- us-west1(Oregon)- Baixo CO2 
- africa-south1(Johannesburgo)
- asia-east2(Hong Kong)
- asia-northeast3(Seul, Coreia do Sul)
- asia-southeast1(Singapura)
- asia-southeast2(Jacarta)
- asia-south2(Déli, Índia)
- australia-southeast1(Sydney)
- australia-southeast2(Melbourne)
- europe-central2(Varsóvia, Polônia)
- europe-west10(Berlim)
- europe-west12(Turim)
- europe-west2(Londres, Reino Unido)- Baixo CO2 
- europe-west3(Frankfurt, Alemanha)
- europe-west6(Zurique, Suíça)- Baixo CO2 
- me-central1(Doha)
- me-central2(Damã)
- northamerica-northeast1(Montreal)- Baixo CO2 
- northamerica-northeast2(Toronto)- Baixo CO2 
- southamerica-east1(São Paulo, Brasil)- Baixo CO2 
- southamerica-west1(Santiago, Chile)- Baixo CO2 
- us-west2(Los Angeles)
- us-west3(Salt Lake City)
- us-west4(Las Vegas)
- No Google Cloud console, acesse o Cloud Run: 
- Localize o serviço que você quer excluir na lista de serviços e clique na caixa de seleção para marcá-lo. 
- Clique em Excluir. Isso excluirá todas as revisões do serviço. 
- SERVICE: nome do serviço.
- REGION: Google Cloud região do serviço.
Funções exigidas
Para conseguir as permissões necessárias para concluir este guia de início rápido, peça ao administrador para conceder a você os seguintes papéis do IAM:
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Conceder acesso ao projeto à conta de serviço do Cloud Build
O Cloud Build usa automaticamente a conta de serviço padrão do Compute Engine como a conta de serviço padrão do Cloud Build para criar seu código-fonte e o recurso do Cloud Run, a menos que você substitua esse comportamento.
Para que o Cloud Build crie suas origens, conceda à conta de serviço do Cloud Build o papel Builder do Cloud Run (roles/run.builder) no seu projeto:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT_EMAIL_ADDRESS \ --role=roles/run.builder
Substitua PROJECT_ID pelo ID do projeto Google Cloude SERVICE_ACCOUNT_EMAIL_ADDRESS pelo endereço de e-mail da conta de serviço do Cloud Build. Se você estiver usando a
conta de serviço padrão do Compute Engine como a conta de serviço do Cloud Build, use o seguinte formato para o endereço de e-mail da conta de serviço:
PROJECT_NUMBER-compute@developer.gserviceaccount.com
Substitua PROJECT_NUMBER pelo número do seu projeto Google Cloud.
Para instruções detalhadas sobre como encontrar o ID e o número do projeto, consulte Criar e gerenciar projetos.
A concessão da função de builder do Cloud Run leva alguns minutos para se propagar.
Crie o aplicativo de exemplo
Para escrever um aplicativo em Go:
O app está concluído e pronto para ser implantado.
Implantar no Cloud Run da origem
Importante: este guia de início rápido pressupõe que você tenha papéis de proprietário ou editor no projeto que está usando para este guia. Caso contrário, consulte o papel de desenvolvedor de origem do Cloud Run para ter acesso às permissões necessárias para implantar um recurso do Cloud Run a partir da origem.
A implantação a partir da origem cria automaticamente uma imagem de contêiner com base no código-fonte e a implanta.
Para implantar a partir da origem:
Locais do Cloud Run
O Cloud Run é regional, o que significa que a infraestrutura que executa seus serviços do Cloud Run está localizada em uma região específica e é gerenciada pelo Google para estar disponível de maneira redundante em todas as zonas da região.
Atender aos seus requisitos de latência, disponibilidade ou durabilidade são os principais fatores para selecionar a região em que seus serviços do Cloud Run são executados.
Geralmente, é possível selecionar a região mais próxima de seus usuários, mas considere a localização dos outros Google Cloud
produtos usados pelo serviço do Cloud Run.
O uso de produtos do Google Cloud em vários locais pode afetar a latência e o custo do serviço.
O Cloud Run está disponível nas regiões a seguir:
Sujeitas aos preços do nível 1
Sujeitas aos preços do nível 2
Se você já criou um serviço do Cloud Run, é possível visualizar a região no painel do Cloud Run no console doGoogle Cloud .
Limpar
Para evitar cobranças extras na sua conta do Google Cloud , exclua todos os recursos implantados com este guia de início rápido.
Excluir o repositório
O Cloud Run não cobra quando o serviço implantado não está em uso. No entanto, ainda é possível receber cobranças pelo armazenamento da imagem do contêiner no Artifact Registry. Para excluir repositórios do Artifact Registry, siga as etapas em Excluir repositórios na documentação do Artifact Registry.
Excluir o serviço
Os serviços do Cloud Run não geram custos até receberem solicitações. Para excluir o serviço do Cloud Run, siga uma destas etapas:
Console
Para excluir um serviço, realize as etapas a seguir:
gcloud
Para excluir um serviço, execute o seguinte comando:
gcloud run services delete SERVICE --region REGION
Substitua:
Excluir o projeto de teste
A exclusão do projeto Google Cloud interrompe o faturamento de todos os recursos nele. Para liberar todos os recursos Google Cloud no seu projeto, siga estas etapas:
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
A seguir
Para mais informações sobre como criar um contêiner a partir do código-fonte e enviá-lo para um repositório, consulte: