Construindo uma Esteira de CI/CD: Do Código ao Deploy
Null Pointer
0:00 / 0:00
Construindo uma Esteira de CI/CD: Do Código ao Deploy
1 498 просмотров · 2 месяца назад
Null Pointer
465 подписчиков
1 498 просмотров · 2 месяца назад
Você containerizou a aplicação, isolou o artefato, blindou as credenciais e enjaulou o código. Mas o deploy ainda depende de você estar acordado e com o terminal aberto. Isso não é infraestrutura. É processo manual disfarçado de arquitetura.
Neste video, a gente arranca as suas mãos do processo de deploy de vez. Construímos uma esteira de CI/CD implacável do zero absoluto: API Spring Boot com Java 21, empacotada via Multistage Build, versionada no GitHub e deployada automaticamente na nuvem via GitHub Actions, sem você precisar tocar em um único terminal de produção.
Você vai entender como estruturar um pipeline profissional no workflow.yaml. Vamos configurar o cache do Gradle para cortar o tempo de build pela metade, implementar um sistema de versionamento duplo de imagem com latest e hash criptográfico de commit para rollback cirúrgico, e plugar o Docker Hub como cofre de artefatos selados na esteira. Na ponta da linha, o servidor de produção só tem uma responsabilidade: puxar a imagem e subir o container. Zero contato com código fonte em ambiente de produção.
No próximo episódio: A esteira está de pé. Agora a aplicação precisa de estado. Vamos substituir o health check por um CRUD real conectado ao PostgreSQL e acoplar a primeira camada de observabilidade com Prometheus e Grafana. Servidor de produção não adivinha gargalo.
Se você quer entender o que acontece por baixo do banco de dados que você acaba de conectar, esse vídeo é obrigatório:
NullDB — Construindo um motor de banco de dados relacional do zero:
• Construí um Banco de Dados Sem Usar NENHUM...
Playlist completa da série Docker:
• Docker: Do Absoluto Zero à Arquitetura DevOps
MEU SETUP (LABORATÓRIO):
Máquina: Acer Nitro V15
GPU: NVIDIA RTX 3050
Host OS: Pop!_OS
VM (Tutorial): Linux Mint 22 (via VirtualBox 7)
CONTATO COMERCIAL: contato.nullpointer@gmail.com
0:00 - Introdução: Deploy manual é coisa de amador
0:25 - Arquitetura da esteira: do código ao servidor em produção
1:02 - Criando a API Spring Boot com Java 21 e Gradle
2:11 - Health Check Controller, @RestController e @RequestMapping
3:08 - ResponseEntity e contrato com Java Record
4:38 - Validando a API rodando local
5:12 - Dockerfile com Multistage Build (JDK no build, JRE em produção)
6:13 - Docker Compose, variáveis de ambiente e perfil de produção
6:53 - Build e validação do container local
7:53 - Estrutura do repositório: pasta .github/workflows
8:04 - Escrevendo o pipeline.yaml do zero
9:01 - Steps da pipeline: checkout, JDK 21, cache do Gradle e permissões
10:26 - Autenticação no Docker Hub sem senha no código
11:09 - Build e push com versionamento duplo: latest + hash do commit
12:06 - Criando o repositório no GitHub
13:14 - git init, branch main e primeiro push
13:56 - Pipeline disparada: acompanhando o GitHub Actions em tempo real
14:35 - Configurando secrets de infraestrutura no GitHub
16:03 - Rerun, pipeline verde e imagem publicada no Docker Hub
17:05 - Deploy no Render: puxando a imagem direto do registry
18:37 - API respondendo em produção na internet
19:00 - Próximos passos: Postgres, Prometheus e Grafana
#GitHubActions #Docker #SpringBoot #Java21 #CICD #DevOps #Backend #EngenhariaDeSoftware #ArquiteturaDeSoftware #MultiStageBuild #NullPointer