Runbook — PostgreSQL
Sintomas
- Timeouts TypeORM no arranque
ECONNREFUSED 127.0.0.1:5432só no container- Login 500 / empresas 500
- Uma das duas BDs ok e a outra não (auth vs domínio)
Dual BD
Há duas conexões. Falha de auth (AUTH_DATABASE_*) parte login/register. Falha da default (POSTGRES_*) parte empresas, operacional, white label, portal.
Verificar
- No container: as variáveis existem e não estão vazias? (
POSTGRES_HOSTvslocalhosté o erro clássico — env-container). - Firewall / security group: IP de saída do Swarm ≠ IP do portátil do developer.
DATABASE_SSL/AUTH_DATABASE_SSLalinhados com o servidor.DATABASE_SEARCH_PATHsecompanynão está empublic.- Credenciais rodadas no servidor e não no painel do serviço.
Diagnóstico longo: docker-db-debug.
Mitigação
- Corrigir env e redeploy (não basta restart se o
env_fileantigo ficou baked). - Não ligar
synchronize: truepara “corrigir” schema. - Se migration a meio: não avançar a imagem; aplicar ou reverter SQL à mão (ADR 0005).