Self-hosting
Run OrcAI with Docker Compose or a manually managed service stack.
OrcAI can be run as a local Docker Compose stack or as manually managed Bun app and worker processes connected to external services.
For most self-hosting experiments, start with Docker Compose quickstart. Use manual setup when you need to manage PostgreSQL, Qdrant, SpiceDB, S3-compatible storage, and workers yourself.
Not production hardened
These pages document what the repository can run today. They are not yet a complete production operations guide.
Choose a path
Docker Compose quickstart
Start the app, workers, databases, object storage, authorisation, and vector search locally.
Manual setup
Run the Bun app and workers directly against services you manage yourself.
Configuration
Map the required environment variables for auth, storage, AI, retrieval, and services.
Operations
Use the current maintenance notes for migrations, workers, retrieval, and troubleshooting.
Required infrastructure
- PostgreSQL
- S3-compatible object storage
- Qdrant
- SpiceDB
- An OpenAI-compatible endpoint for embeddings
- Background workers
Caveats
docker-compose.local.yamlis a development override, not a production deployment manifest.- Assets cannot be indexed until an instance admin sets up embeddings in the app. Changing the embedding model is not possible yet.
Source files
.env.exampledocker-compose.yamldocker-compose.local.yamlpackages/ai/src/config.tspackages/db/src/config.tspackages/notifications/src/config.tspackages/qdrant/src/config.tspackages/s3/src/server/config.tspackages/spice-db/src/config.ts
Administration
Manage members, invitations, groups, quota pools, analytics, providers, models and the Organisation page with its Assistant, default chat and utility models and web search, plus Manage instance, the instance admin and initialising a new instance.
Docker Compose quickstart
Start a local OrcAI stack with the repository Compose files.