Guia rápido para iniciar o DigiVerse com Docker em menos de 5 minutos.
# Clonar repositório (se ainda não fez)
git clone https://github.com/CAFernandes/API-REST-Digimon.git
cd API-REST-Digimon
# Copiar variáveis de ambiente
cp .env.example .env
# (Opcional) Editar .env se necessário
# As configurações padrão funcionam para desenvolvimento local# Build de todas as imagens Docker
pnpm docker:build
# Isso irá:
# - Buildar imagem do frontend (React + Nginx)
# - Buildar imagem do backend (Fastify + Node)
# - Baixar imagens do PostgreSQL e Redis⏱️ Tempo estimado: 3-5 minutos na primeira vez
# Iniciar todos os containers
pnpm docker:up
# Ver logs em tempo real (opcional)
pnpm docker:logs⏱️ Tempo de inicialização: 30-60 segundos
Abra o navegador em: http://localhost
Você deve ver a página inicial do DigiVerse com:
- Lista de Digimons
- Filtros compactos
- Busca funcionando
Abra: http://localhost:3000
Você deve ver:
{
"message": "🦖 DigiVerse API is running!"
}Abra: http://localhost:3000/docs
Você verá a documentação interativa da API.
- Home: http://localhost
- Login: http://localhost/login
- Registro: http://localhost/register
- Acesse a home page
- Clique nos filtros (Nível, Tipo, Atributo)
- Observe a lista sendo filtrada em tempo real
- Digite no campo de busca: "Agumon"
- Veja os resultados filtrando instantaneamente
- Clique em qualquer card de Digimon
- Veja a página de detalhes com evoluções
# Parar todos os containers (preserva dados)
pnpm docker:down
# Parar e remover volumes (⚠️ apaga dados do banco)
pnpm docker:clean# Rebuild e reiniciar
pnpm docker:rebuild
# Ou manualmente:
pnpm docker:down
pnpm docker:build
pnpm docker:up# Ver logs do frontend
docker logs digiverse_web
# Reconstruir frontend
pnpm docker:web:build
docker-compose up -d web --force-recreate# Ver logs do backend
docker logs digiverse_backend
# Verificar se banco está rodando
docker ps | grep postgres
# Reiniciar backend
docker restart digiverse_backend# Descobrir processo usando a porta
sudo lsof -i :80
sudo lsof -i :3000
# Matar processo (exemplo)
kill -9 [PID]
# Ou alterar portas no .env:
echo "WEB_PORT=8080" >> .env
echo "PORT=3001" >> .env
# Reiniciar
pnpm docker:rebuild# Verificar status
docker ps -a
# Ver logs de todos os serviços
docker-compose logs
# Limpar tudo e recomeçar
pnpm docker:clean
pnpm docker:build
pnpm docker:up# Ver containers rodando
docker ps
# Ver logs de um serviço específico
docker logs digiverse_web
docker logs digiverse_backend
docker logs digiverse_postgres
docker logs digiverse_redis
# Entrar em um container
docker exec -it digiverse_backend sh
docker exec -it digiverse_web sh
# Ver uso de recursos
docker stats
# Inspecionar health check
docker inspect digiverse_web | grep Health -A 10Agora que seu ambiente está rodando:
- Explore a API: http://localhost:3000/docs
- Leia a documentação completa: DOCKER_DEPLOY.md
- Configure para produção: Seção de Produção
- Contribua: CONTRIBUTING.md
- Use
pnpm docker:logspara monitorar todos os serviços - Frontend e backend são independentes - você pode parar um e o outro continua funcionando
- Dados do PostgreSQL são persistidos - seus Digimons não somem ao reiniciar
- Health checks garantem que serviços estão saudáveis antes de aceitar tráfego
Problemas?
🐳 Feliz Dockerização!