Instruções e requisitos de configuração do laboratório
Proteja sua conta e seu progresso. Sempre use uma janela anônima do navegador e suas credenciais para realizar este laboratório.

Como implantar um site no Cloud Run

Laboratório 20 minutos universal_currency_alt 1 crédito show_chart Introdutório
info Este laboratório pode incorporar ferramentas de IA para ajudar no seu aprendizado.
Este conteúdo ainda não foi otimizado para dispositivos móveis.
Para aproveitar a melhor experiência, acesse nosso site em um computador desktop usando o link enviado a você por e-mail.

GSP659

Logotipo dos laboratórios autoguiados do Google Cloud

Visão geral

Administrar sites pode ser trabalhoso. É preciso criar e gerenciar VMs, clusters, pods, serviços etc. Esse processo faz sentido para aplicativos grandes e com vários níveis, mas não é necessário se você quiser apenas implantar um site e torná-lo visível.

Com o Cloud Run, a solução do Cloud desenvolvida no framework Knative do Google, é possível gerenciar e implantar um site sem o overhead de infraestrutura exigido pelas implantações puras do Kubernetes ou com VMs. Além de simplificar o gerenciamento, essa abordagem também permite a redução da escala a zero quando o site não está recebendo solicitações.

O Cloud Run leva o conceito de desenvolvimento sem servidor para os contêineres. Ele pode ser executado em clusters do Google Kubernetes Engine (GKE) ou em uma solução PaaS totalmente gerenciada oferecida pelo Cloud Run. Neste laboratório, você trabalhará com o segundo caso.

A ordem das tarefas simula uma experiência de desenvolvedor de nuvem:

  1. Criar um contêiner do Docker no seu aplicativo
  2. Implantar o contêiner no Cloud Run
  3. Modificar o site
  4. Lançar uma nova versão sem causar tempo de inatividade

O que você vai aprender

Neste laboratório, você vai aprender a:

  • Criar uma imagem Docker usando o Cloud Build e fazer o upload dela no Artifact Registry
  • Implantar imagens Docker no Cloud Run
  • Gerenciar implantações do Cloud Run
  • Configurar um endpoint para um aplicativo no Cloud Run

Configuração e requisitos

Antes de clicar no botão Começar o Laboratório

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.

Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.

Confira os requisitos para concluir o laboratório:

  • Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.

Como iniciar seu laboratório e fazer login no console do Google Cloud

  1. Clique no botão Começar o laboratório. Se for preciso pagar por ele, uma caixa de diálogo vai aparecer para você selecionar a forma de pagamento. No painel Detalhes do Laboratório, à esquerda, você vai encontrar o seguinte:

    • O botão Abrir Console do Google Cloud
    • O tempo restante
    • As credenciais temporárias que você vai usar neste laboratório
    • Outras informações, se forem necessárias
  2. Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.

    O laboratório ativa os recursos e depois abre a página Fazer Login em outra guia.

    Dica: coloque as guias em janelas separadas lado a lado.

    Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
  3. Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.

    {{{user_0.username | "Username"}}}

    Você também encontra o nome de usuário no painel Detalhes do Laboratório.

  4. Clique em Próxima.

  5. Copie a Senha abaixo e cole na caixa de diálogo de Olá.

    {{{user_0.password | "Password"}}}

    Você também encontra a senha no painel Detalhes do Laboratório.

  6. Clique em Próxima.

    Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
  7. Acesse as próximas páginas:

    • Aceite os Termos e Condições.
    • Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
    • Não se inscreva em testes gratuitos.

Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.

Observação: para acessar os produtos e serviços do Google Cloud, clique no Menu de navegação ou digite o nome do serviço ou produto no campo Pesquisar. Ícone do menu de navegação e campo de pesquisa

Ativar o Cloud Shell

O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.

  1. Clique em Ativar o Cloud Shell Ícone "Ativar o Cloud Shell" na parte de cima do console do Google Cloud.

  2. Clique nas seguintes janelas:

    • Continue na janela de informações do Cloud Shell.
    • Autorize o Cloud Shell a usar suas credenciais para fazer chamadas de APIs do Google Cloud.

Depois de se conectar, você verá que sua conta já está autenticada e que o projeto está configurado com seu Project_ID, . A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.

  1. (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
  1. Clique em Autorizar.

Saída:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project

Saída:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Observação: consulte a documentação completa da gcloud no Google Cloud no guia de visão geral da gcloud CLI.

Tarefa 1: clonar o repositório de origem

Como você vai implantar um site que já existe, basta clonar a origem e depois criar as imagens Docker e fazer a implantação no Cloud Run.

  1. No Cloud Shell, execute os comandos a seguir para clonar o repositório git e acessar o diretório apropriado:
git clone https://github.com/googlecodelabs/monolith-to-microservices.git cd ~/monolith-to-microservices
  1. Instale as dependências do NodeJS para testar o aplicativo antes da implantação:
./setup.sh

Esse processo vai levar alguns minutos. Você verá uma mensagem quando ele for concluído.

  1. Execute o comando a seguir para iniciar o servidor da web e testar o aplicativo:
cd ~/monolith-to-microservices/monolith npm start

Saída:

Monolith listening on port 8080!
  1. Para ver o aplicativo, clique no ícone de visualização na web e selecione Visualizar na porta 8080.

Opção "Visualizar na porta 8080" selecionada no menu expandido de visualização da web

Uma nova janela será aberta na página da web "Fancy Store".

Site da Fancy Store

  1. Depois de visualizar o site, feche a janela e pressione CTRL+C no Cloud Shell para interromper o servidor da web.

Tarefa 2: criar um contêiner do Docker com o Cloud Build

Agora que os arquivos de origem estão prontos, é hora de colocar o aplicativo no Docker.

O método mais comum seria criar um contêiner do Docker e enviá-lo para um registro, em que a imagem é armazenada e pode ser extraída pelo GKE. Com o Cloud Build, você pode criar o contêiner do Docker e mover a imagem para o Artifact Registry usando apenas um comando.

O Cloud Build compacta e envia os arquivos do diretório para um bucket do Cloud Storage. Em seguida, todos os arquivos do bucket e o Dockerfile no mesmo diretório serão usados para executar o processo de build no Docker.

Criar um repositório de destino do Docker

É necessário criar um repositório antes de enviar imagens para ele. O envio de uma imagem não aciona a criação de um repositório, e a conta de serviço do Cloud Build não tem permissões para criar repositórios.

  1. No console, pesquise Artifact Registry no campo de pesquisa e clique no resultado Artifact Registry.

  2. Clique em Criar repositório.

  3. Especifique o nome do repositório como monolith-demo.

  4. Escolha Docker como o formato.

  5. Em Tipo de local, selecione Região e escolha o local .

  6. Clique em Criar.

Configurar a autenticação

Antes de enviar ou extrair imagens, configure o Docker para usar a CLI do Google Cloud e autenticar solicitações ao Artifact Registry.

  • Para configurar a autenticação nos repositórios do Docker na região , execute o seguinte comando no Cloud Shell:
gcloud auth configure-docker {{{project_0.default_region | Region}}}-docker.pkg.dev

O comando atualiza a configuração do Docker. Agora é possível se conectar ao Artifact Registry no projeto do Google Cloud para enviar e extrair imagens.

Implantar a imagem

Agora você vai implantar a imagem criada anteriormente.

  1. Primeiro é necessário ativar as APIs Cloud Build, Artifact Registry e Cloud Run. Execute o seguinte comando no Cloud Shell para ativá-los:
gcloud services enable artifactregistry.googleapis.com \ cloudbuild.googleapis.com \ run.googleapis.com
  1. Depois de ativar as APIs, execute o comando abaixo para iniciar o processo de build:
gcloud builds submit --tag {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 Observação: esse processo levará alguns minutos.
  1. Para acessar o histórico de builds ou acompanhar o processo em tempo real, no console, pesquise Cloud Build e clique no resultado Cloud Build.
  2. Na página Histórico, você pode ver uma lista de todos os seus builds. Por enquanto, haverá apenas o que você criou.

Lista do histórico do build

  • Se clicar no ID do build, você verá todos os detalhes dele, incluindo a saída do registro.

  • Na página Detalhes do build, para ver a imagem do contêiner criada, clique na guia Detalhes da execução e depois no link da imagem.

Detalhes do build

Clique em Verificar meu progresso para conferir o objetivo. Criar um contêiner do Docker com o Google Cloud Build

Tarefa 3: implantar o contêiner no Cloud Run

Agora que você já fez a conteinerização do site e enviou o contêiner para o Artifact Registry, é hora implantar no Cloud Run.

Há duas abordagens de implantação no Cloud Run:

  • Cloud Run gerenciado: o modelo de plataforma como serviço em que o ciclo de vida do contêiner é gerenciado pelo próprio Cloud Run. Essa é a abordagem que você usará neste laboratório.
  • Cloud Run no GKE: o Cloud Run com uma camada adicional de controle, que permite integrar seus próprios clusters e pods do GKE. Clique aqui para saber mais.
  1. Execute este comando para implantar a imagem no Cloud Run:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 --region {{{project_0.default_region | Region}}}
  1. Ao receber a solicitação para permitir invocações não autenticadas em [monolith], digite Y.

Clique em Verificar meu progresso para conferir o objetivo. Implantar o contêiner no Cloud Run

Verificar a implantação

  1. Para confirmar que a implantação foi criada corretamente, execute o seguinte comando:
gcloud run services list Observação: pode levar alguns instantes para o status do pod aparecer como "Em execução.

Saída:

✔ SERVICE: monolith REGION: {{{project_0.default_region | Region}}} URL: https://monolith-2cxtmp4m2q-uc.a.run.app LAST DEPLOYED BY: student-02-aa7a5aed362d@qwiklabs.net LAST DEPLOYED AT: 2022-08-19T19:16:14.351981Z

A saída mostra várias informações: a implantação, o usuário que a executou, ou seja, seu e-mail e o URL para acessar o aplicativo. Parece que tudo foi criado corretamente.

  1. Clique no URL que aparece na lista de serviços. Você verá o mesmo site que visualizou localmente.
Observação: você também pode conferir suas implantações do Cloud Run no console. Para isso, acesse o Cloud Run pelo menu de navegação.

Tarefa 4: criar uma revisão com simultaneidade menor

Nesta seção, você vai implantar seu aplicativo de novo. Desta vez, um dos parâmetros deve ser ajustado.

Por padrão, os aplicativos do Cloud Run têm o valor de simultaneidade "80". Isso significa que cada instância do contêiner processará até 80 solicitações por vez. É uma diferença considerável em relação ao modelo Funções como serviço, em que uma instância processa uma solicitação por vez.

  1. Execute o comando abaixo para implantar novamente a mesma imagem de contêiner com um valor de simultaneidade "1", apenas para teste, e descubra o que acontece:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 --region {{{project_0.default_region | Region}}} --concurrency 1
  1. Para conferir os detalhes, no menu de navegação, clique em Cloud Run e depois no serviço do monolith:

O serviço do monolith

  1. Na página Detalhes do serviço, clique na guia Revisões. Agora haverá duas revisões.

Os detalhes da implantação mais recente estão à direita.

A guia Revisões do monolítico

Você verá que o valor de simultaneidade mudou para "1".

A guia Contêiner do monolítico

Essa configuração pode ser usada para testes, mas geralmente os contêineres processam várias solicitações simultâneas nos cenários de produção.

Clique em Verificar meu progresso para conferir o objetivo. Criar uma revisão com simultaneidade menor

Em seguida, restaure a simultaneidade original, mas não faça outra implantação. Você pode mudar o valor para o padrão "80" ou para "0", o que removerá as restrições de simultaneidade e definirá o valor máximo, que também é "80".

  1. Execute este comando para atualizar a revisão atual, usando um valor de simultaneidade 80:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:1.0.0 --region {{{project_0.default_region | Region}}} --concurrency 80

Você vai perceber que outra revisão foi criada, que o tráfego foi redirecionado e que a simultaneidade voltou para "80".

Observação: talvez seja necessário sair e voltar à guia Revisões para conferir as informações mais atualizadas.

Tarefa 5: fazer mudanças no site

Situação: sua equipe de marketing solicitou que você mude a página inicial do seu site. Ela quer que a página inclua mais informações sobre a empresa e os produtos vendidos.

Tarefa: para atender ao pedido da equipe de marketing, você vai adicionar um texto à página inicial. Parece que um dos desenvolvedores já criou as alterações. O nome do arquivo atualizado é index.js.new. Você só precisa copiar esse arquivo para index.js, e as mudanças aparecerão na página. Siga as instruções abaixo para fazer as mudanças apropriadas.

  1. Execute os comandos a seguir para renomear o arquivo atualizado com o nome correto:
cd ~/monolith-to-microservices/react-app/src/pages/Home mv index.js.new index.js
  1. Imprima o conteúdo para verificar as alterações:
cat ~/monolith-to-microservices/react-app/src/pages/Home/index.js

O código resultante será parecido com este:

/* Copyright 2019 Google LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ import React from "react"; import { Box, Paper, Typography } from "@mui/material"; export default function Home() { return ( <Box sx={{ flexGrow: 1 }}> <Paper elevation={3} sx={{ width: "800px", margin: "0 auto", padding: (theme) => theme.spacing(3, 2), }} > <Typography variant="h5">Fancy Fashion &amp; Style Online</Typography> <br /> <Typography variant="body1"> Cansou das ideias de moda convencionais, das tendências populares e das normas sociais? Esta linha de produtos de estilo de vida vai ajudar você a acompanhar a tendência Fancy e expressar seu estilo pessoal. Comece a comprar produtos Fancy agora! </Typography> </Paper> </Box> ); }

Os componentes do React foram atualizados, mas você precisa criar o app React para gerar os arquivos estáticos.

  1. Execute o comando a seguir para criar o aplicativo React e copiar ele no diretório público monolith:
cd ~/monolith-to-microservices/react-app npm run build:monolith

Agora que o código está atualizado, recrie o contêiner do Docker e publique no Artifact Registry. Você pode usar o mesmo comando de antes, mas atualizará o indicador de versão desta vez.

  1. Execute este comando para acionar o Cloud Build de novo com a imagem atualizada na versão 2.0.0:
cd ~/monolith-to-microservices/monolith gcloud builds submit --tag {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:2.0.0

Na próxima seção, você vai usar essa imagem para atualizar seu aplicativo sem inatividade.

Clique em Verificar meu progresso para conferir o objetivo. Fazer alterações no site

Tarefa 6: atualizar o site sem causar inatividade

As alterações foram feitas, e a equipe de marketing adorou a nova versão. É hora de atualizar o site sem interromper o serviço para os usuários. O Cloud Run trata cada implantação como uma nova Revisão. Primeiro a revisão será implantada on-line e depois o tráfego será redirecionado para ela.

Por padrão, 100% do tráfego do serviço será atribuído à revisão mais recente. É possível usar "rotas" para alocar porcentagens diferentes de tráfego para revisões específicas em um serviço. Siga as instruções abaixo para atualizar seu site:

  • Execute este comando para implantar novamente o serviço e atualizar a imagem para uma nova versão:
gcloud run deploy monolith --image {{{project_0.default_region | Region}}}-docker.pkg.dev/${GOOGLE_CLOUD_PROJECT}/monolith-demo/monolith:2.0.0 --region {{{project_0.default_region | Region}}}

Clique em Verificar meu progresso para conferir o objetivo. Atualizar o site sem causar inatividade

Verificar a implantação

  1. Execute o comando abaixo para confirmar que a implantação foi atualizada:
gcloud run services describe monolith --platform managed --region {{{project_0.default_region | Region}}}

Saída:

✔ Serviço do monolítico na região URL: https://monolith-hl5loimtga-uc.a.run.app Entrada: todo o tráfego: 100% MAIS RECENTE (atualmente monolith-00005-xum) Última atualização em 2022-08-19T18:39:39.885859Z por student-02-9af04e268b9e@qwiklabs.net: Revisão monolith-00005-xum Imagem: -docker.pkg.dev/qwiklabs-gcp-00-30d07cf3de5b/monolith-demo/monolith:2.0.0 Porta: 8080 Memória: 512Mi CPU: 1000m Conta de serviço: 467160385597-compute@developer.gserviceaccount.com Simultaneidade: 80 Máx. de instâncias: 1 Tempo limite: 300s

Observe que o Serviço agora está usando a versão mais recente da imagem, que foi implantada como uma nova revisão.

Para confirmar as alterações, acesse o URL externo do serviço do Cloud Run e atualize a página. Note que o título do aplicativo foi atualizado.

  1. Execute o comando a seguir para listar os serviços e ver o URL do serviço:
gcloud beta run services list
  1. Clique no URL do serviço. O site agora mostra o texto que você acabou de incluir no componente da página inicial.

O site da Fancy Store atualizado

Parabéns!

Você implantou, aumentou e reduziu a escala e atualizou um site no Cloud Run.

Próximas etapas / Saiba mais

Se você não conhece esses produtos, confira os links abaixo para saber mais:

Manual atualizado em 31 de dezembro de 2025

Laboratório testado em 31 de dezembro de 2025

Copyright 2026 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.

Antes de começar

  1. Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
  2. Os laboratórios têm um limite de tempo e não têm o recurso de pausa. Se você encerrar o laboratório, vai precisar recomeçar do início.
  3. No canto superior esquerdo da tela, clique em Começar o laboratório

Usar a navegação anônima

  1. Copie o nome de usuário e a senha fornecidos para o laboratório
  2. Clique em Abrir console no modo anônimo

Fazer login no console

  1. Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
  2. Aceite os termos e pule a página de recursos de recuperação
  3. Não clique em Terminar o laboratório a menos que você tenha concluído ou queira recomeçar, porque isso vai apagar seu trabalho e remover o projeto

Este conteúdo não está disponível no momento

Você vai receber uma notificação por e-mail quando ele estiver disponível

Ótimo!

Vamos entrar em contato por e-mail se ele ficar disponível

Um laboratório por vez

Confirme para encerrar todos os laboratórios atuais e iniciar este

Use a navegação anônima para executar o laboratório

Using an Incognito or private browser window is the best way to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.