Configure e otimize ambientes de desenvolvimento Docker para projetos NestJS com hot-reload, persistência de dados, health checks e debugging eficiente.
Esta Skill orienta a configuração de ambientes Docker otimizados para desenvolvimento de aplicações NestJS, com foco em produtividade, hot-reload, debugging e boas práticas de containerização.
Configurar e manter ambientes Docker eficientes para desenvolvimento NestJS, garantindo:
Ative esta Skill quando o usuário:
NÃO use esta Skill para:
tipo_projeto: NestJS (versão, dependências principais)servicos_externos: Lista de serviços necessários (PostgreSQL, MySQL, Redis, RabbitMQ, etc.)estrutura_atual: Arquivos Docker existentes (se houver) e estrutura do projetoproblemas_atuais: Descrição de problemas de performance ou configuração (opcional)Analise a estrutura do projeto NestJS:
Crie um Dockerfile otimizado para desenvolvimento com as seguintes características:
Princípios obrigatórios:
node:20.5.1-slim (ou versão apropriada do projeto)@nestjs/cli globalmente para comandos nestUSER node para segurançaWORKDIR /home/node/appCMD que mantém container ativo (tail -f /dev/null ou npm run start:dev)Template base:
FROM node:20.5.1-slim
# Instalar NestJS CLI globalmente
RUN npm install -g @nestjs/[email protected]
# Segurança: usuário não-root
USER node
# Diretório de trabalho
WORKDIR /home/node/app
# Manter container ativo para desenvolvimento
CMD ["tail", "-f", "/dev/null"]
Explique ao usuário:
Configure docker-compose.yaml com:
Serviço da Aplicação: