Deployment - Processos e Boas Práticas
Processos gerais de deploy, validação, backup e boas práticas para deploy em produção.
Última Atualização: 2026-01-23
Quando Usar
Aplicar esta skill quando:
- •Fazer deploy em servidores de produção
- •Configurar CI/CD
- •Validar antes de deploy
- •Fazer backup antes de mudanças críticas
- •Documentar processos de deploy
- •Configurar SSH, Docker, Nginx em servidores
Princípios Core
1. Validação Obrigatória Antes de Deploy
SEMPRE validar antes de fazer deploy:
- •✅ Testar em ambiente de desenvolvimento primeiro
- •✅ Verificar migrations/alterações de banco
- •✅ Verificar variáveis de ambiente
- •✅ Verificar dependências e serviços
- •✅ Verificar health checks configurados
- •✅ Verificar logs de desenvolvimento
2. Backup Antes de Mudanças Críticas
SEMPRE fazer backup antes de:
- •Aplicar migrations
- •Atualizar versões de dependências críticas
- •Modificar configurações de banco de dados
- •Deploy de features grandes
- •Mudanças em infraestrutura
Processo de Backup:
bash
# Banco de dados docker exec <db-container> pg_dump -U <user> <database> > backup_$(date +%Y%m%d).sql # Arquivos media/static tar -czf media_backup_$(date +%Y%m%d).tar.gz media/
3. Documentação de Mudanças
SEMPRE documentar:
- •Mudanças importantes em deploy
- •Problemas encontrados e soluções
- •Configurações específicas do servidor
- •Processos de rollback (se necessário)
4. Testar em Desenvolvimento Primeiro
NUNCA fazer deploy direto em produção:
- •✅ Testar localmente primeiro
- •✅ Testar em ambiente de staging (se disponível)
- •✅ Validar todos os serviços
- •✅ Verificar logs e health checks
Processos de Deploy
Deploy via Docker Compose
Seguir skill: skills/infrastructure/docker-execution/SKILL.md
Processo:
- •Verificar Makefile primeiro (seguir
skills/infrastructure/makefile/SKILL.md) - •Executar comandos via Makefile
- •Verificar logs após deploy
- •Validar health checks
Comandos típicos:
bash
# Via Makefile (preferencial) make up-prod make migrate make health # Ou direto (se Makefile não tem) docker compose -f docker-compose.prod.yml up -d --build
Deploy via SSH
Processo:
- •Conectar via SSH
- •Navegar para diretório do projeto
- •Pull das mudanças (se necessário)
- •Executar deploy via Makefile ou Docker Compose
- •Verificar logs e status
Exemplo:
bash
ssh root@<server-ip> cd /apps/<project> git pull origin main make up-prod make logs
Deploy via CI/CD
Processo:
- •Push para branch de produção
- •CI/CD detecta mudanças
- •Build automático
- •Deploy automático
- •Health checks automáticos
- •Notificações (se configurado)
Plataformas de Deploy
Hostinger (VPS)
Características:
- •Servidores VPS com Docker
- •Deploy via SSH + Docker Compose
- •Configuração manual de Nginx e SSL
- •Credenciais: Carregar de
config/.env.passwords
Processo:
- •SSH no servidor
- •Navegar para diretório do projeto
- •Executar deploy via Makefile
- •Configurar Nginx (se necessário)
- •Configurar SSL (se necessário)
Render.com
Características:
- •Blueprint-based deployment
- •Ambiente gerenciado
- •Deploy automático via Git push
- •API Key: Carregar de
config/.env.passwordscomoRENDER_API_KEY
Processo:
- •Push para branch configurada
- •Render detecta mudanças automaticamente
- •Build e deploy de todos os serviços
- •Health checks automáticos
Vercel
Características:
- •Deploy de frontends e serverless
- •Configuração via CLI ou Dashboard
- •Deploy automático via Git push
Processo:
- •Configurar projeto no Vercel
- •Conectar repositório
- •Push para branch configurada
- •Deploy automático
Validação Pós-Deploy
SEMPRE verificar após deploy:
- •
Health Checks
bashcurl http://<server>/health make health
- •
Logs Iniciais
bashmake logs docker compose logs --tail=100
- •
Status dos Serviços
bashmake ps docker compose ps
- •
Acesso à Aplicação
- •Verificar se aplicação carrega
- •Verificar endpoints principais
- •Verificar admin/dashboard (se aplicável)
Rollback
Processo de rollback:
- •
Identificar versão anterior
bashgit log --oneline git checkout <commit-anterior>
- •
Restaurar backup (se necessário)
bashdocker exec -i <db-container> psql -U <user> <database> < backup.sql
- •
Redeploy
bashmake up-prod
- •
Validar
bashmake health make logs
Troubleshooting
Serviço não inicia
- •Verificar logs:
make logsoudocker compose logs - •Verificar variáveis de ambiente
- •Verificar conexão com banco
- •Verificar dependências (Redis, etc)
- •Verificar portas disponíveis
Migration falha
- •Verificar conexão com banco
- •Verificar permissões
- •Verificar estado atual das migrations
- •Fazer backup antes de corrigir
- •Verificar logs de migration
Health check falha
- •Verificar se serviço está rodando
- •Verificar porta e endpoint
- •Verificar logs do serviço
- •Verificar dependências (Redis, DB)
Checklist de Deploy
Antes do Deploy
- • Testado em desenvolvimento
- • Migrations validadas
- • Variáveis de ambiente configuradas
- • Backup feito (se necessário)
- • Health checks configurados
- • Logs verificados em dev
Durante o Deploy
- • Deploy executado via Makefile (preferencial)
- • Logs monitorados
- • Erros identificados e tratados
Após o Deploy
- • Health checks passaram
- • Logs verificados (sem erros críticos)
- • Status dos serviços verificado
- • Aplicação acessível
- • Funcionalidades principais testadas
- • Documentação atualizada (se necessário)
Referências
- •Docker Execution:
skills/infrastructure/docker-execution/SKILL.md - •Makefile:
skills/infrastructure/makefile/SKILL.md - •Docker Compose:
skills/infrastructure/docker-compose/SKILL.md - •Scripts Temporários:
skills/workflow/scripts-logs/SKILL.md - •Git/Commits:
skills/workflow/commit-workflow/SKILL.md
Última Atualização: 2026-01-23