1. Visão geral
O Cloud Run é uma plataforma sem servidor totalmente gerenciada que permite executar contêineres sem estado que podem ser invocados usando solicitações HTTP. O Cloud Run não tem servidor. Ele cuida de todo o gerenciamento da infraestrutura para que você possa se concentrar no que mais importa: criar aplicativos incríveis.
Ele foi criado com base no Knative, o que dá a você a opção de executar contêineres de maneira totalmente gerenciada com o Cloud Run ou no cluster do Google Kubernetes Engine com o Cloud Run no GKE.
O que você vai aprender
Você vai aprender a:
- implantar o aplicativo do Cloud Run
Pré-requisitos
- Para fazer este laboratório, é preciso ter familiaridade com o console do Cloud e os ambientes do Cloud Shell.
2. Configuração e requisitos
Configuração do projeto do Google Cloud
- Faça login no Console do Google Cloud e crie um novo projeto ou reutilize um existente. Crie uma conta do Gmail ou do Google Workspace, se ainda não tiver uma.
- O Nome do projeto é o nome de exibição para os participantes do projeto. É uma string de caracteres não usada pelas APIs do Google Você pode atualizar a qualquer momento.
- O ID do projeto precisa ser exclusivo em todos os projetos do Google Cloud e não pode ser mudado após a definição. O console do Cloud gera automaticamente uma string exclusiva. normalmente você não se importa com o que seja. Na maioria dos codelabs, é necessário fazer referência ao ID do projeto, que normalmente é identificado como
PROJECT_ID
. Se você não gostar do ID gerado, poderá gerar outro ID aleatório. Como alternativa, você pode tentar o seu próprio e ver se ele está disponível. Ela não pode ser alterada após essa etapa e permanecerá durante a duração do projeto. - Para sua informação, há um terceiro valor, um Número de projeto, que algumas APIs usam. Saiba mais sobre esses três valores na documentação.
- Em seguida, ative o faturamento no console do Cloud para usar os recursos/APIs do Cloud. A execução deste codelab não será muito cara, se tiver algum custo. Para encerrar os recursos e não gerar faturamento além deste tutorial, exclua os recursos criados ou exclua o projeto inteiro. Novos usuários do Google Cloud estão qualificados para o programa de US$ 300 de avaliação sem custos.
Configuração do ambiente
Ative o Cloud Shell clicando no ícone à direita da barra de pesquisa.
No Cloud Shell, ative a API Cloud Run:
gcloud services enable run.googleapis.com
Se for preciso autorizar, clique em "Autorizar" para continuar.
Uma mensagem semelhante a esta vai aparecer:
Operation "operations/acf.p2-327036483151-73d90d00-47ee-447a-b600-a6badf0eceae" finished successfully.
3. Preparar inscrição
Primeiro, você vai preparar um aplicativo Node.js simples e baseado no Express que responde a solicitações HTTP.
No Cloud Shell, crie um novo diretório chamado starter-nodejs
e mude para ele:
mkdir starter-nodejs
cd starter-nodejs
Crie um arquivo package.json
executando os comandos abaixo:
cat > ./package.json << EOF
{
"name": "cloudrun-starter-app",
"version": "1.0.0",
"description": "Node.js Starter Application",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"author": "",
"license": "Apache-2.0",
"dependencies": {
"express": "^4.18.2"
}
}
EOF
O arquivo acima contém um comando de script de inicialização e uma dependência no framework Express para aplicativos da Web.
No mesmo diretório, execute os comandos abaixo para criar um arquivo index.js
:
cat > ./index.js << EOF
const express = require('express');
const app = express();
app.get('/', (req, res) => {
console.log('Received a request.');
res.send("Hello Cloud Run!");
});
const port = process.env.PORT || 8080;
app.listen(port, () => {
console.log('Listening on port', port);
});
EOF
Esse código cria um servidor da Web básico que detecta na porta definida pela variável de ambiente PORT. O app está concluído e pronto para conteinerização e implantação.
4. Implantar o aplicativo do Cloud Run
Execute o comando abaixo para implantar o aplicativo:
gcloud run deploy starter-app \
--source . \
--region us-central1 \
--allow-unauthenticated \
--max-instances=3
Confirme a criação do repositório do Artifact Registry:
Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in region [us-central1] will be created. Do you want to continue (Y/n)? y
Como resultado do comando anterior, as etapas a seguir serão executadas:
Explore o resultado destas etapas no Console do Cloud: Cloud Build, Cloud Storage, Artifact Registry e Cloud Run.
5. Parabéns!
Parabéns! Você acabou de implantar um aplicativo no Cloud Run.
O que aprendemos:
- Como implantar um aplicativo inicial no Cloud Run
O que vem em seguida:
Conheça outros codelabs da Cymbal Eats:
- Como acionar fluxos de trabalho do Cloud com o Eventarc
- Como acionar o processamento de eventos no Cloud Storage
- Como se conectar ao CloudSQL particular pelo Cloud Run
- Como se conectar a bancos de dados totalmente gerenciados pelo Cloud Run
- Aplicativo seguro sem servidor com o Identity Aware Proxy (IAP)
- Como acionar jobs do Cloud Run com o Cloud Scheduler
- Como implantar com segurança no Cloud Run
- Como proteger o tráfego de entrada do Cloud Run
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto ou mantenha o projeto e exclua cada um dos recursos.
Excluir o projeto
O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para este tutorial.