Deployment
Required DNS subdomains
Create these records once your server is running. Replace example.com with
your domain.
make install prints this same list with your own domain filled in. If the two
ever disagree, trust the installer: it reads your actual configuration.
Point these at your server
| Record | Type | Notes |
|---|---|---|
onecamp-backend |
A | The API |
onecamp-emqx |
A | Realtime messaging |
onecamp-minio |
A | File storage |
onecamp-collab |
A | Live editing in documents |
onecamp-livekit |
A | Video calls and meetings |
onecamp-turn |
A | Call connectivity. DNS only — never proxy this one |
If you use Cloudflare, onecamp-turn must be grey-clouded (DNS only). Media
travels over UDP and a proxy cannot carry it, so an orange cloud here does not
show an error: calls just never connect for people on restrictive networks.
Point this at your web app, not your server
| Record | Type | Points at |
|---|---|---|
onecamp |
CNAME or A | Your web app deployment — see step 4 of the install guide |
This is the address your team opens. Nothing on the server answers it, because
the web app is deployed separately.
Do not create records for the admin consoles
Postgres, Redis, Dgraph and OpenSearch are not published to the internet, and
neither are the EMQX, MinIO and OpenSearch consoles. A record pointing at them
either resolves to something that refuses to answer, or exposes a datastore that
was never meant to be reachable. Reach the consoles with make console-tunnel
instead.
The Traefik dashboard is behind basic auth and needs no record unless you
deliberately want it published.