
A lightweight, self-hosted desktop streaming platform. Create on-demand browser or desktop sessions with per-user resource limits, fixed instances, and shared workspaces.
Supports any KASM Workspaces image like Chromium, Firefox, Chrome, or full desktops.
services:
mini-kasm:
image: spaleks/mini-kasm:latest
container_name: mini-kasm
environment:
- CONFIG_PATH=/config/users.yaml
- DOCKER_HOST=unix:///var/run/docker.sock
- PORT=32090
volumes:
- ./config:/config:ro
- /var/run/docker.sock:/var/run/docker.sock
networks:
- spal_kasm_net
ports:
- "32090:32090"
networks:
spal_kasm_net:
name: spal_kasm_net
external: true
Create the network before starting: docker network create spal_kasm_net
Edit config/users.yaml:
server:
secret_key: "change-me-to-a-secure-random-string"
session_path_prefix: "/u"
idle_timeout_seconds: 600
max_sessions_total: 50
login_session_timeout_hours: 24
docker:
network: "spal_kasm_net"
container_port: 6901
shm_size: "512m"
allowed_images:
chromium:
name: "Chromium Browser"
image: "kasmweb/chromium:1.16.1"
default: true
obsidian:
name: "Obsidian"
image: "kasmweb/obsidian:1.18.0"
volumes:
- path: "/home/kasm-user/obsidian"
suffix: "obsidian-vaults"
desktop:
name: "Ubuntu Desktop"
image: "kasmweb/ubuntu-jammy-desktop:1.16.1"
cap_add: [CHOWN, SETUID, SETGID, NET_RAW, SYS_CHROOT]
users:
- username: "alice"
password_hash_bcrypt: "$2b$12$..."
max_sessions: 2
cpu_limit: 1.0
mem_limit: "1536m"
persistent_volume: true
fixed_instances:
- id: "alice-desktop"
name: "My Desktop"
username: "alice"
image: "desktop"
protected: true
shared_instances:
- id: "team-browser"
name: "Team Browser"
image: "chromium"
allowed_users: [alice, bob]
admin_users: [alice]
python3 -c "import bcrypt; print(bcrypt.hashpw(b'yourpassword', bcrypt.gensalt()).decode())"
Or use it-tools.tech/bcrypt (GitHub).
kasmweb/chromium - Chromium browserkasmweb/firefox - Firefox browserkasmweb/chrome - Google Chromekasmweb/desktop - Full Ubuntu desktopSee hub.docker.com/u/kasmweb for more options.
apps.example.com {
reverse_proxy mini-kasm:32090
}
MIT
Content type
Image
Digest
sha256:7edd430a6…
Size
73.9 MB
Last updated
8 months ago
docker pull spaleks/mini-kasm