Infraestrutura¶
Status: Aprovado · Responsável: Gustavo Madruga · Atualizado em: 2026-09-30
Aplica-se a: todo perfil.
Como as peças da infraestrutura da X-Adm se encaixam. O detalhe de cada uma está nas páginas desta seção.
flowchart TD
DEV[Dev] -- "push / tag" --> FG[Forgejo<br/>git origin]
FG -- push-mirror --> GH[pipeline.yml]
GH -- "build: imagem" --> REG[(Registry<br/>fonte.xadm.biz)]
GH -- "deploy: POST /api/ci/deploy" --> CB[central-backend<br/>control-plane]
CB -- "API do Coolify" --> CO[Coolify]
CO -- "pull da imagem" --> REG
CO --> APP[Containers dos apps]
TR[Traefik<br/>HTTPS] --> APP
APP --> PG[(PostgreSQL<br/>compartilhado)]
APP --> GA[(Garage S3)]
APP -- erros --> GT[GlitchTip]
GH -- "docs: publica" --> GA
| Peça | Papel | Onde |
|---|---|---|
| GitHub Actions | CI/CD: gate, build das imagens off-host, disparo do deploy, smoke | CI, gates e testes |
| Forgejo | git origin, push-mirror para o GitHub, edição web, registro de pacotes e de imagens, Release de artefato | Forgejo |
| central-backend | control-plane de deploy: resolve o recurso e dispara o Coolify | Deploy |
| Coolify | PaaS self-hosted: puxa a imagem e roda os containers | Operação no Coolify |
| Traefik | proxy reverso do Coolify: HTTPS com Let's Encrypt | Operação no Coolify |
| xadm-dns | CoreDNS de cada host: resolve os domínios do host para o Traefik local, na chamada de app para app | Operação no Coolify |
| PostgreSQL | banco compartilhado entre apps (000-compartilhado) |
Operação no Coolify |
| Garage | object storage S3-compatível (arquivo-api.xadm.biz) e o bucket das docs |
Garage |
| GlitchTip | rastreamento de erros (bug.xadm.biz) |
Central de Apps |
| Aptabase/ClickHouse | telemetria de apps | Central de Apps |
Padrões validados em produção — não 'corrigir'
- Não declarar
networks:explícito no docker-compose — o Coolify gerencia a rede. - O entrypoint do Traefik é
https(nãowebsecure, o nome da doc oficial do Traefik). - A variável de commit é
XADM_COMMIT(nãoCOMMIT_SHA, e nãoSOURCE_COMMIT— esse nome é do Coolify, que o sobrescreve comHEADem runtime; coolify).