Documentation
Everything you need to self-host SellServ Voice.
Choose Your Install Method
RecommendedDocker
Deploy with Docker Compose in minutes. Includes Caddy for automatic HTTPS. One command to install, one command to update.
View guideManual Install
Install directly on Ubuntu 24.04 or Debian 12+ using the included setup script. Full control over the stack with Docker, Caddy, and automatic SSL.
View guideBefore You Self-Host
Tech stack, system requirements, and what to know before deploying.
Tech Stack — Self-Hosted
Single container, zero external dependencies.
| Layer | Technology |
|---|---|
| Runtime | Node.js 22 |
| HTTP Server | Fastify 5 |
| Frontend | SvelteKit + Svelte 5 |
| Database | SQLite (better-sqlite3 + FTS5) |
| Voice/Video | mediasoup 3.15 (WebRTC SFU) |
| File Storage | Local disk |
| Auth | bcrypt + JWT + TOTP |
System Requirements
| Spec | Minimum | Recommended |
|---|---|---|
| Architecture | x86_64 (amd64) required | |
| OS | Any Linux with Docker, or Ubuntu 24.04 / Debian 12+ | |
| RAM | 1 GB | 2 GB+ |
| CPU | 1 vCPU | 2 vCPU+ |
| Storage | 10 GB | 20 GB+ (depends on uploads) |
Resource Usage
Designed for a 1 GB server serving 10-15 concurrent users:
| Component | Memory |
|---|---|
| Node.js | ~100 MB |
| mediasoup worker | ~40 MB |
| SQLite | ~10 MB |
| Total | ~150-200 MB |
Good to Know
- Zero config by default — Self-hosted mode uses SQLite, mediasoup, and local storage. No external services needed.
- WebRTC — Requires UDP ports 40000-40100 open for voice/video.
- Email — Required for email verification, MFA, and password resets. Resend has a free tier.
- All features are free — Self-hosted instances have full access to everything.
- Updates — DB migrations run automatically on startup.
- Backups — Back up
data/anduploads/. That's your entire instance.