1. Introdução
Visão geral
Neste codelab, você vai implantar oito aplicativos JavaScript no Cloud Run:
- SSR do Angular: com base no Angular
- Nuxt.js - com base em Vue.js
- Next.js: com base no React.
- Remix (com base no React)
- SvelteKit - baseado no Svelte
- SolidStart: baseado em Solid.js.
- Astro
- Qwik
O que você vai aprender
- Como implantar frameworks JavaScript compatíveis com o Cloud Build automaticamente
- Como implantar frameworks JavaScript que exigem configuração
Pré-requisitos
- Você fez login no terminal do Cloud Shell.
- Você tem um projeto do Google Cloud com o faturamento ativado e permissão para implantar no Cloud Run
- Confirme isso se você já tiver implantado um serviço do Cloud Run. Por exemplo, siga o Guia de início rápido sobre a implantação de um serviço da Web em Node.js no código-fonte para começar.
2. Ativar o Cloud Shell
- Navegue até o terminal do Cloud Shell: https://shell.cloud.google.com/?show=terminalSe esta for a primeira vez que você inicia o Cloud Shell, uma tela intermediária com a descrição será exibida. Se aparecer uma tela intermediária, clique em Continuar.O provisionamento e a conexão com o Cloud Shell devem levar apenas alguns instantes.
- Execute o seguinte comando no Cloud Shell para definir seu projeto
gcloud
: Substitua <PROJECT_ID> pelo ID do projeto. Exemplo:gcloud config set project <PROJECT_ID>
Se for preciso autorizar, clique em Autorizar.gcloud config set project js-frameworks
3. Ativar APIs
Antes de começar a usar este codelab, você precisa ativar várias APIs. Este codelab requer o uso das APIs a seguir. É possível ativar essas APIs executando o seguinte comando:
gcloud services enable \ cloudbuild.googleapis.com \ artifactregistry.googleapis.com \ run.googleapis.com
Em seguida, defina as variáveis de ambiente que serão usadas neste codelab.
4. Configurar região padrão
É possível definir a região individualmente para cada implantação. Esse comando definirá a região padrão como us-central1
para que você não precise defini-la para cada uma.
gcloud config set run/region us-central1
5. Configurar o Git
Algumas bibliotecas esperam que git
seja usado para controle de versões por padrão. Se você já configurou o git
na sua máquina (por exemplo, está executando este laboratório localmente), não é necessário seguir estas etapas.
git config --global user.email "you@example.com" git config --global user.name "Your Name" git config --global init.defaultBranch main
6. SSR angular (angular)
- Navegue até o diretório em que você quer criar o aplicativo do Angular
cd ~
- Criar um aplicativo Angular que usa a renderização do lado do servidor (SSR)
Quando suas preferências forem solicitadas, pressione a teclanpx @angular/cli new angular-app --ssr
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd angular-app
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://angular-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto do Angular localmente
cd .. rm -rf angular-app
- Excluir o serviço do Angular para o Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete angular-app
Enter
.
7. Nuxt.js (Vue.js)
- Navegue até o diretório em que você quer criar o aplicativo do Angular
cd ~
- Criar um aplicativo Nuxt.js
Quando suas preferências forem solicitadas, pressione a teclanpx nuxi init nuxt-app
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd nuxt-app
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://nuxt-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto Nuxt.js localmente
cd .. rm -rf nuxt-app
- Excluir o serviço Nuxt.js do Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete nuxt-app
Enter
.
8. Next.js (React)
- Navegue até o diretório em que você quer criar o aplicativo Angular
cd ~
- Criar um aplicativo Next.js
Quando suas preferências forem solicitadas, pressione a teclanpx create-next-app next-app
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd next-app
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://next-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto Next.js localmente
cd .. rm -rf next-app
- Excluir o serviço Next.js do Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete next-app
Enter
.
9. Remix (reação)
- Navegue até o diretório em que você quer criar o aplicativo Angular
cd ~
- Criar um app Remix
Quando suas preferências forem solicitadas, pressione a teclanpx create-remix remix-app
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd remix-app
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://remix-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto de remix localmente
cd .. rm -rf remix-app
- Excluir o serviço Remix do Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete remix-app
Enter
.
10. Limpeza do Cloud Shell
Se você não estiver usando o Cloud Shell ou estiver implantando apenas um aplicativo, esta etapa é opcional
O Cloud Shell oferece um diretório principal permanente de 5 GB e é executado no Google Cloud.
Para implantar os oito frameworks com o Cloud Shell, você precisa criar espaço para os aplicativos restantes.
A remoção dos projetos do Cloud Shell não excluirá os serviços implantados do Cloud Run.
Para limpar os aplicativos que você já criou, execute estes comandos:
cd ~ rm -rf angular-app/ rm -rf nuxt-app/ rm -rf next-app/ rm -rf remix-app/
11. SvelteKit (Svelte)
- Navegue até o diretório em que você quer criar o aplicativo Angular
cd ~
- Criar um aplicativo SvelteKit
Quando suas preferências forem solicitadas, pressione a teclanpx create-svelte svelte-app
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd svelte-app
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://svelte-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto SvelteKit localmente
cd .. rm -rf svelte-app
- Excluir o serviço SvelteKit do Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete svelte-app
Enter
.
12. SolidStart (Solid)
- Navegue até o diretório em que você quer criar o aplicativo Angular
cd ~
- Criar um aplicativo SolidStart
Quando suas preferências forem solicitadas, pressione a teclanpx create-solid solid-app
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd solid-app
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://solid-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto SolidStart localmente
cd .. rm -rf solid-app
- Excluir o serviço SolidStart do Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete solid-app
Enter
.
13. Astro
- Navegue até o diretório em que você quer criar o aplicativo Angular
cd ~
- Criar um aplicativo Astro
Quando suas preferências forem solicitadas, pressione a teclanpx create-astro astro-app
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd astro-app
- Adicionar o adaptador Astro para Node.js
npx astro add node
- Atualize o script
start
empackage.json
.npm pkg set scripts.start="HOST=0.0.0.0 node ./dist/server/entry.mjs"
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://astro-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto Astro localmente
cd .. rm -rf astro-app
- Excluir o serviço Astro Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete astro-app
Enter
.
14. Qwik
- Navegue até o diretório em que você quer criar o aplicativo Angular
cd ~
- Criar um aplicativo Qwik
Quando suas preferências forem solicitadas, pressione a teclanpx create-qwik
Enter
para aceitar os padrões. - Navegue até a nova pasta do projeto que você criou
cd qwik-app
- Adicionar o adaptador do Qwik para o Cloud Run
npm run qwik add cloud-run
- Implantar o aplicativo
Quando suas preferências forem solicitadas, pressione a teclagcloud run deploy --allow-unauthenticated
Enter
para aceitar os padrões.
Acesse seu aplicativo
A implantação vai levar alguns minutos. Quando concluído, o Cloud Run vai retornar um URL como:
https://qwik-app-xxxxxxxxxx-uc.a.run.app
Abra o URL fornecido em uma nova guia do navegador para ver o aplicativo implantado.
Limpeza opcional
- Excluir o projeto Qwik localmente
cd .. rm -rf qwik-app
- Excluir o serviço Qwik Cloud Run
Quando aparecer uma mensagem perguntando se você quer continuar, pressione a teclagcloud run services delete qwik-app
Enter
.
15. Parabéns!
Parabéns por concluir o codelab.
Recomendamos consultar a documentação em Guia de início rápido: implantar no Cloud Run a partir de um repositório git para que os builds futuros possam ser implantados automaticamente a cada push no controle de versões.
O que discutimos
- Como implantar frameworks JavaScript compatíveis com o Cloud Build automaticamente
- SSR do Angular: com base no Angular
- Nuxt.js - com base em Vue.js
- Next.js: com base no React.
- Remix (com base no React)
- SvelteKit - baseado no Svelte
- SolidStart: baseado em Solid.js.
- Como implantar frameworks JavaScript que exigem configuração
- Astro
- Qwik
16. Limpar
Para evitar cobranças acidentais, por exemplo, se esse serviço do Cloud Run for invocado mais vezes do que sua alocação mensal de invocação do Cloud Run no nível sem custo financeiro, exclua o job do Cloud Run ou o projeto criado na Etapa 1.
Para excluir os serviços do Cloud Run, acesse o console do Cloud Run do Cloud Run em https://console.cloud.google.com/run/ e exclua os serviços.
Se você optar por excluir o projeto inteiro, acesse https://console.cloud.google.com/cloud-resource-manager, selecione o projeto criado na etapa 2 e escolha "Excluir". Se você excluir o projeto, precisará alterar os projetos no SDK Cloud. Para conferir a lista de todos os projetos disponíveis, execute gcloud projects list
.