Deployment
RoControl is deployed with separate containers for the dashboard, backend, database, docs site, and Caddy reverse proxy.
Services
| Service | Port | Purpose |
|---|---|---|
postgres | internal | Database |
backend | 4000 | API, auth, jobs, modules |
frontend | 3000 | RoControl dashboard |
docs | 3001 | Nextra documentation |
caddy | 80, 443 | TLS and reverse proxy |
Domains
| Domain | Service |
|---|---|
rocontrol.duckdns.org | Dashboard |
api-rocontrol.duckdns.org | Backend API |
docs.rocontrol.duckdns.org | Nextra docs |
Deployment checklist
- Point all three DuckDNS hostnames to the server.
- Set the environment variables.
- Start Docker Compose.
- Confirm Caddy obtains certificates.
- Open the dashboard and docs domains.
- Check backend health.
docker compose up -d --build
docker compose ps