Implemente uma app no Cloud Run através do Cloud Deploy

Esta página mostra como usar o Cloud Deploy para entregar uma imagem de aplicação de exemplo denominada hello a uma sequência de dois serviços do Cloud Run ou dois trabalhos do Cloud Run.

Neste início rápido, vai fazer o seguinte:

  1. Crie uma configuração do Skaffold

  2. Crie ficheiros de configuração para dois serviços do Cloud Run ou duas tarefas.

    Estes ficheiros definem os serviços ou as tarefas e especificam as imagens de contentores (pré-criadas) a implementar.

  3. Defina o pipeline de entrega e os destinos de implementação do Cloud Deploy, que apontam para os dois serviços ou os dois trabalhos.

  4. Instancie a sua pipeline de entrega criando um lançamento, que é implementado automaticamente no primeiro destino.

  5. Promova o lançamento para o segundo destino.

  6. Veja ambas as implementações na Google Cloud consola.

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.
  • 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  • Se estiver a usar um projeto existente para este guia, verifique se tem as autorizações necessárias para concluir este guia. Se criou um novo projeto, já tem as autorizações necessárias.

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

  • Enable the Cloud Deploy, Cloud Build, Cloud Run, and Cloud Storage APIs.

    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 APIs

  • Install the Google Cloud CLI.

  • Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  • Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  • 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  • Se estiver a usar um projeto existente para este guia, verifique se tem as autorizações necessárias para concluir este guia. Se criou um novo projeto, já tem as autorizações necessárias.

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

  • Enable the Cloud Deploy, Cloud Build, Cloud Run, and Cloud Storage APIs.

    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 APIs

  • Install the Google Cloud CLI.

  • Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  • Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  • Funções necessárias

    Para receber as autorizações de que precisa para criar um pipeline de entrega e uma versão do Cloud Deploy, peça ao seu administrador para lhe conceder a função de IAM executor de tarefas do Cloud Deploy (roles/clouddeploy.jobrunner) no seu projeto.

    Para garantir que a conta de serviço do Cloud Deploy tem as autorizações necessárias para executar operações do Cloud Deploy e implementar no Cloud Run, peça ao seu administrador para conceder à conta de serviço do Cloud Deploy as seguintes funções de IAM no seu projeto:

    Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    O administrador também pode conceder à conta de serviço do Cloud Deploy as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

    Prepare a configuração do Skaffold

    O Cloud Deploy usa o Skaffold para fornecer os detalhes sobre o que implementar e como o implementar corretamente para os seus alvos separados.

    Para este início rápido, cria um ficheiro skaffold.yaml, que identifica o serviço ou a definição de tarefa do Cloud Run a usar para implementar a app de exemplo.

    1. Abra uma janela de terminal.

    2. Crie um novo diretório com o nome deploy-run-quickstart e navegue até ele.

      mkdir deploy-run-quickstart
      cd deploy-run-quickstart
      
    3. Crie um ficheiro denominado skaffold.yaml com o seguinte conteúdo:

      Serviços

      apiVersion: skaffold/v4beta7
      kind: Config
      metadata: