Deployment
Konet ships as a single container: ghcr.io/raucheacho/konet. No database, no
sidecars — one service, a handful of env vars, done.
Required env vars
Every deployment needs these two (generate with openssl rand -hex 32):
KONET_JWT_SECRET=<random 32+ chars>
SECRET_KEY_BASE=<random 64 chars>Strongly recommended for anything reachable beyond localhost:
KONET_STUDIO_PASSWORD=<pick one>
KONET_ALLOWED_ORIGINS=https://app.example.com
KONET_HOST=realtime.example.comSee Configuration for the full list.
Coolify
- New Resource → Docker Image, image:
ghcr.io/raucheacho/konet:latest(or point a Docker Compose resource at this repo'sdocker-compose.yml). - Set the env vars above in the resource's Environment Variables.
- Set the exposed port to
4000and attach your domain — Coolify's Traefik handles TLS and WebSocket upgrades out of the box. - Deploy. The image has a built-in healthcheck on
/api/health, so Coolify shows real health status.
Dokploy
- Create Application → Docker (image) with
ghcr.io/raucheacho/konet:latest, or Compose pointing at this repo. - Add the env vars, map your domain to container port
4000. - Deploy — same healthcheck applies.
Plain VPS (docker compose)
curl -O https://raw.githubusercontent.com/raucheacho/konet/main/docker-compose.yml
cat > .env <<EOF
KONET_JWT_SECRET=$(openssl rand -hex 32)
SECRET_KEY_BASE=$(openssl rand -hex 32)
KONET_STUDIO_PASSWORD=change-me
KONET_HOST=realtime.example.com
EOF
docker compose up -dPut Nginx/Caddy/Traefik in front for TLS. WebSockets need the usual upgrade headers — Caddy does it automatically; for Nginx:
location / {
proxy_pass http://127.0.0.1:4000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}After first boot
- Open
https://your-domain/studio, sign in withKONET_STUDIO_PASSWORD. - Go to Keys and click Rotate Secret to generate the anon/service keys,
or pre-set
KONET_ANON_KEY/KONET_SERVICE_KEYas env vars. - Copy the rotated values back into your platform's env settings so they survive redeploys.