Prerequisites
- Docker 24.0+ with Compose v2
- Linux (Ubuntu 22.04+), macOS, or Windows with WSL2
| Resource | Minimum | Recommended |
|---|---|---|
| CPU | 4 cores | 8+ cores |
| RAM | 8 GB | 16+ GB |
| Storage | 50 GB SSD | 200+ GB SSD |
Quick Start
.env with required configuration:
Start Services
For convenience, define an alias:http://localhost:3000. First user becomes admin.
Services
| Service | Port | Purpose |
|---|---|---|
| caddy | 80/443 | Reverse proxy, TLS termination |
| omni-web | 3000 | Frontend + API |
| omni-searcher | 3001 | Search service |
| omni-indexer | 3002 | Document indexing |
| omni-ai | 3003 | LLM/embedding service |
| connector-manager | 8090 | Connector orchestration, sync scheduling, SDK endpoints |
| postgres | 5432 | Database (ParadeDB) |
| redis | 6379 | Cache, sessions |
Data & Backups
Critical volumes to back up:| Volume | Priority | Content |
|---|---|---|
postgres_data | Critical | All application data |
caddy_data | High | TLS certificates |
Upgrading
Common Issues
| Problem | Solution |
|---|---|
| Services won’t start | Check omni-compose logs for errors; verify .env values |
| Database connection errors | Wait for postgres “ready to accept connections”; check DATABASE_* vars |
| Out of memory | Increase Docker memory; set INDEXER_CONCURRENCY=2 in .env |
| Port conflicts | Check netstat -tulpn | grep -E ':(3000|5432|6379)' |
Next Steps
- Connect Data Sources - Google, Slack, Confluence, etc.
- Configuration Reference - All environment variables
- User Management - Add users and permissions