Pular para conteúdo

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:

  1. Não declarar networks: explícito no docker-compose — o Coolify gerencia a rede.
  2. O entrypoint do Traefik é https (não websecure, que é o nome usado na doc oficial do Traefik).
  3. A variável de commit nos builds é SOURCE_COMMIT (não COMMIT_SHA).