Self-Hosting Guide
Deploy the Vrge collaboration server on your own infrastructure. This guide is for Team license customers who need real-time collaboration across their organization.
1. Prerequisites
- Docker and Docker Compose installed on your server
- Alternatively, Node.js 18+ if running without Docker
- A Team license key — purchase at getvrge.com/pricing
- A server with at least 1 GB RAM and 1 CPU core (any Linux VPS, on-premises machine, or cloud instance)
2. Quick Start with Docker
The fastest way to get the Vrge server running is with Docker Compose.
- Clone the repository
git clone https://github.com/vrge-app/vrge-server.git cd vrge-server - Configure environment variables
cp .env.example .env # Edit .env and set a strong JWT_SECRET - Start the server
docker compose up -d - Verify it's running
Open
http://localhost:8080in your browser. The first user to register becomes the admin.
Here's an example docker-compose.yml for reference:
version: "3.8"
services:
vrge-server:
image: vrge/server:latest
ports:
- "8080:8080"
- "3001:3001"
environment:
- JWT_SECRET=${JWT_SECRET}
- API_PORT=3001
- WEB_PORT=8080
- DATABASE_PATH=/app/data/vrge.db
volumes:
- vrge-data:/app/data
restart: unless-stopped
volumes:
vrge-data:3. Environment Variables
| Variable | Default | Description |
|---|---|---|
API_PORT | 3001 | Server API port |
WEB_PORT | 8080 | Web UI port |
JWT_SECRET | (required) | Secret for signing JWT tokens |
DATABASE_PATH | /app/data/vrge.db | SQLite database file path |
4. Database & Data Persistence
- Vrge uses SQLite — no external database server required
- Data is stored in a Docker volume called
vrge-dataat the path specified byDATABASE_PATH - The volume persists across container restarts and updates
Backing up your database
docker cp vrge-server-1:/app/data/vrge.db ./backup.dbWe recommend scheduling regular backups (e.g., via cron) to protect against data loss.
5. Connecting the Desktop App
Once your server is running, connect each team member's Vrge desktop app:
- Open Vrge and go to Settings → Team Collaboration
- Enter your server URL (e.g.,
https://vrge.yourcompany.com) - Click Connect
- Sign in or register — the first user becomes the admin
Each team member needs their own Vrge desktop app with a valid Team license.
6. Updating
To update the Vrge server to the latest version:
docker compose pull
docker compose up -dYour data volume is preserved across updates. We recommend backing up your database before updating.
7. Security Recommendations
- Use HTTPS— place Vrge behind a reverse proxy (e.g., Nginx, Caddy, or Traefik) with TLS certificates
- Set a strong JWT_SECRET — use at least 32 random characters. Generate one with
openssl rand -base64 32 - Restrict network access — only expose the server on your internal network or behind a VPN if possible
- Keep Docker updated — regularly update Docker and your host OS to patch security vulnerabilities
- Back up regularly — schedule automated backups of the SQLite database file
- Monitor logs — check container logs with
docker compose logs -ffor any issues