Self-Hosting
DaoFlow is designed to run on your own infrastructure. This section covers the current production stack, staging rehearsal, environment configuration, SSL, and incident recovery.
Quick Start (CLI Installer)
The recommended way to deploy DaoFlow in production:
# Interactive — prompts for domain, admin email, password
curl -fsSL https://raw.githubusercontent.com/DaoFlow-dev/DaoFlow/main/scripts/install.sh | sh
# Non-interactive — fully automated
curl -fsSL https://raw.githubusercontent.com/DaoFlow-dev/DaoFlow/main/scripts/install.sh | sh -s -- \
--dir /opt/daoflow \
--domain deploy.example.com \
--email admin@example.com \
--password 'SecureP@ss123' \
--yes
See Installation for full details.
Or deploy manually with Docker Compose (see Docker Compose Setup).
Contents
| Guide | Description |
|---|---|
| Requirements | Hardware and software prerequisites |
| Docker Compose | Production Docker Compose deployment |
| Staging Runbook | Rehearse operator bring-up safely |
| Incident Recovery | Recover from common operator failures |
| Environment Variables | All configurable env vars |
| SSL & Domains | HTTPS and domain configuration |
| Upgrading | Upgrading to new versions |
Current Production Topology
The repository production stack is a normal Docker Compose project built from:
daoflow— web UI, API, and worker entrypointpostgres— DaoFlow application databaseredis— streaming and transient coordinationtemporal-postgresql,temporal,temporal-ui— optional durable workflow substrate
Temporal services are present in the default compose file, but DaoFlow only switches from the legacy worker to Temporal-backed execution when DAOFLOW_ENABLE_TEMPORAL=true.
Recommended Operator Path
- Install or copy the reference compose stack
- Follow the staging runbook on a non-production host
- Verify deploy, rollback, backup, and log flows end to end
- Promote the same operational pattern to production
- Keep the incident recovery guide nearby for break-glass situations