Docker and Compose overview
Nanami ships deployment assets in the repository deploy/ directory.
Key files
| File | Use case |
| --- | --- |
| deploy/docker-compose.yml | Local community stack bootstrap and gateway profile |
| deploy/docker-compose.traefik.yml | Reverse-proxy oriented deployment path |
| deploy/docker-compose.shared.yml | Shared service definitions across modes |
| deploy/community.env | Environment defaults for community mode |
| deploy/saas.env | Environment defaults for SaaS mode |
| deploy/shared.env | Shared environment variables |
Local bootstrap example
bash
docker compose -f deploy/docker-compose.yml up -d db
Optional gateway profile in local environments:
bash
docker compose -f deploy/docker-compose.yml --profile gateway up -d gateway-daemon
Practical usage pattern
- Start with local compose to validate object model and workflows.
- Move to environment-specific config for staging/production.
- Keep mode-specific env files (
community.env,saas.env) explicit.
Diagram (text)
compose/env files -> service containers -> control plane APIs -> WebUI + gateway workflows
Notes
- Compose is the easiest starting point, not the only production pattern.
- In COMMUNITY mode, gateway-daemon runs with
network_mode: host. - Set
GATEWAY_HOSTand manage gateway WireGuard UDP port from Dashboard (wg_listen_port). - For production, add TLS, secrets management, backups, and monitoring.