skills/infrastructure/docker-compose/SKILL.md
Regras rígidas de segurança para Docker Compose - NUNCA expor variáveis de ambiente
npx skillsauth add lucasbiason/cursor-multiagent-system docker-compose-securityInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
REGRAS RÍGIDAS E OBRIGATÓRIAS para Docker Compose.
services:
app:
environment:
- SERVER_TYPE=http
- SERVER_PORT=8080
- AUTHENTICATION_TYPE=apikey
- AUTHENTICATION_API_KEY=${EVOLUTION_API_KEY:-ChangeMeToSecureKey123!}
- DATABASE_ENABLED=true
- DATABASE_PROVIDER=postgresql
- DATABASE_CONNECTION_URI=${EVOLUTION_DATABASE_URI:-postgresql://user:[email protected]:5433/db}
NUNCA, JAMAIS, EM HIPÓTESE ALGUMA:
ChangeMeToSecureKey123!)services:
app:
env_file:
- .env.app
- .env.database
# Apenas variáveis não-sensíveis podem estar aqui
environment:
- NODE_ENV=production
- LOG_LEVEL=info
SEMPRE:
env_file: para todas as variáveis sensíveis.env.* separados por serviço.env.* ao .gitignore.env.example com placeholdersproject/
├── docker-compose.yml # SEM variáveis sensíveis
├── .env.example # Template com placeholders
├── .env.app # Variáveis da aplicação (gitignored)
├── .env.database # Credenciais do banco (gitignored)
├── .env.redis # Credenciais do Redis (gitignored)
└── .gitignore # Deve incluir .env.*
# Application
SERVER_TYPE=http
SERVER_PORT=8080
AUTHENTICATION_TYPE=apikey
AUTHENTICATION_API_KEY=your_api_key_here
# Database
DATABASE_ENABLED=true
DATABASE_PROVIDER=postgresql
DATABASE_CONNECTION_URI=postgresql://user:password@host:port/database
# Redis
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=your_redis_password_here
# Application - NUNCA COMMITAR
SERVER_TYPE=http
SERVER_PORT=8080
AUTHENTICATION_TYPE=apikey
AUTHENTICATION_API_KEY=sk_live_abc123xyz789
Antes de commitar docker-compose.yml:
environment:env_file: está configurado.env.* está no .gitignore.env.example existe com placeholdersScript de validação:
# Verificar se há senhas/tokens no docker-compose.yml
grep -E "(password|secret|key|token|uri|connection)" docker-compose.yml | grep -v "env_file"
Se encontrar algo, ERRO CRÍTICO - não commitar!
environment:env_file:.env.* no .gitignore.env.example criado com placeholderstesting
Execução e análise de testes automatizados
development
Gera resumos didáticos extensos e estruturados de aulas/cursos para cards do Notion. Use ao resumir aulas, apostilas, transcrições ou materiais de estudo para incluir no corpo do card (não apenas no campo Descrição), com flashcards, exemplos de código, diagramas Mermaid, mapa conceitual e perguntas de reforço.
development
Padroniza documentação existente no formato canônico Spec-Driven. Remove duplicação e melhora rastreabilidade.
development
Processo universal e repetível para criar especificações a partir de qualquer input (texto, docs, código). Usado em Plan mode.