Overview
For organizations that need complete control over their infrastructure, Kisuke can be self-hosted. This guide covers deploying Kisuke’s coordination server (KJS - Kisuke Join Server).Why Self-Host?
- Data sovereignty - Keep all data within your infrastructure
- Compliance - Meet regulatory requirements
- Air-gapped networks - Deploy in isolated environments
- Custom policies - Full control over access and routing
Architecture
Requirements
Hardware
| Component | Minimum | Recommended |
|---|---|---|
| CPU | 2 cores | 4 cores |
| RAM | 2 GB | 4 GB |
| Disk | 10 GB | 50 GB |
Software
- Linux (Ubuntu 22.04+, Debian 12+, or similar)
- Docker and Docker Compose, or
- PostgreSQL 14+ (for non-Docker deployments)
Network
- Public IP address (or NAT with port forwarding)
- Domain name (optional but recommended)
- TLS certificate (Let’s Encrypt works great)
Docker Deployment
Quick Start
Configuration (.env)
Docker Compose
Configuring Clients
Point your Kisuke apps to your self-hosted server:Mobile App
- Open Kisuke
- Go to Settings > Advanced
- Enter your KJS URL:
https://kjs.yourcompany.com
Desktop / CLI
Authentication
Self-hosted KJS supports:OIDC (Recommended)
Configure any OIDC provider:Built-in Auth
For testing, use built-in username/password:Maintenance
Backups
Backup the PostgreSQL database regularly:Updates
Logs
Next Steps
Custom Infrastructure
Add custom relay servers.
Admin Console
Manage users and devices.
