Infraestrutura¶
Visão geral da infraestrutura da X-Adm e como as peças se encaixam. O detalhe de operação de cada peça está nas páginas desta seção.
flowchart TD
DEV[Dev / não-dev] -- "push / edição web" --> FG[Forgejo<br/>Git + Actions]
FG -- webhook --> CO[Coolify]
CO -- "builda Dockerfile<br/>e deploya" --> APP[Containers das aplicações]
TR[Traefik<br/>HTTPS Let's Encrypt] --> APP
APP --> PG[(PostgreSQL<br/>compartilhado)]
APP --> GA[(Garage<br/>S3)]
APP -- erros --> BS[Bugsink]
APP -- telemetria --> AP[Aptabase/ClickHouse]
| Peça | Papel | Onde |
|---|---|---|
| Coolify | PaaS self-hosted: builda e deploya os containers | Operação no Coolify |
| Traefik | Proxy reverso do Coolify: HTTPS com Let's Encrypt | Operação no Coolify |
| Forgejo | Forja Git: repositórios, PRs, Actions (CI) | Forgejo e CI |
| PostgreSQL | Banco compartilhado entre apps (000-compartilhado) |
Operação no Coolify |
| Garage | Object storage S3-compatível (arquivo-api.xadm.biz) |
Garage (S3) |
| Bugsink | Rastreamento de erros (bug.xadm.biz) |
(a documentar) |
| Aptabase/ClickHouse | Telemetria de apps | (a documentar) |
Padrões validados em produção — não 'corrigir'
Três pegadinhas já resolvidas; quebrar qualquer uma derruba deploy:
- Não declarar
networks:explícito no docker-compose — o Coolify gerencia a rede. - O entrypoint do Traefik é
https(nãowebsecure, que é o nome usado na doc oficial do Traefik). - A variável de commit nos builds é
SOURCE_COMMIT(nãoCOMMIT_SHA).