Decisões
ORG-0018 — Containers: Docker e Compose
- Status: aceita
- Data: 2026-10-18
- Decide: uma imagem enxuta e não-root por aplicação, e um ambiente local descartável no Compose
Contexto
A mesma imagem precisa rodar na máquina do desenvolvedor, nos testes e em produção. E o ambiente local precisa subir do zero, sem passos manuais, para qualquer pessoa ou agente.
Decisão
- Uma imagem por aplicação, multi-stage, com usuário não-root, só a porta da aplicação exposta (a de métricas não), contexto de build na raiz e configuração por variável de ambiente.
compose.yamlcom o ambiente local descartável: sem volume nomeado, credenciais óbvias de desenvolvimento, observabilidade num perfil e simuladores no perfile2e.- Dois caminhos locais: aplicações nativas + infraestrutura em container (recomendado no dia a dia) ou tudo em container (valida a imagem antes de um deploy).
- Imagens base e versões ficam numa ADR da stack (a ADR-0006 pré-escrita).
Alternativas consideradas
| Alternativa | Por que não |
|---|---|
| Ambiente local instalado na máquina | Por que não: cada máquina diferente; nada se zera |
| Uma imagem para todas as aplicações | Por que não: imagem grande e acoplada; não se implanta uma sem as outras |
Consequências
- Zerar o ambiente local é derrubar e subir o Compose.
- A imagem testada localmente é a que vai para produção.
Mais
O detalhe está na documentação da arquitetura.