Connect Domain
Self-hosting

Overview

Components, local development, and deployment topology.

Components

  • control-plane (Go + Postgres) — REST API, ask, metrics, workers.
  • edge (Go + CertMagic) — on-demand TLS + reverse proxy.
  • Postgres — the system of record.
  • Optional: console (developer dashboard) and demo (host page).

See ARCHITECTURE.md in the repository for the full module map.

Local development

cd app
make dev     # native processes: Postgres + control-plane + edge + demo
make test    # integration suite (scripts/it.sh)

For real environments, deploy/ contains Dockerfiles, compose, and k8s/.

Deployment topology

  1. Run Postgres and apply db/*.sql.
  2. Run the control-plane; expose only /v1/* publicly.
    • Keep /internal/ask reachable only from the edge.
    • Keep /metrics reachable only from your scraper.
  3. Run the edge with a public IP; point customer domains at it.
    • Set EDGE_ISSUER=letsencrypt (with EDGE_ACME_EMAIL) for public certs; dev uses an internal CA.
  4. Point the edge at the control-plane via CONTROLPLANE_URL.

Full environment-variable tables are on the configuration page.

On this page