Skip to main content

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

ComponentMinimumRecommended
CPU2 cores4 cores
RAM2 GB4 GB
Disk10 GB50 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

  1. Open Kisuke
  2. Go to Settings > Advanced
  3. Enter your KJS URL: https://kjs.yourcompany.com

Desktop / CLI

Authentication

Self-hosted KJS supports: 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.