Guides
Base Path Deployment
Deploy Kener under a subpath like /status using KENER_BASE_PATH with Docker and reverse proxies
Use this guide when Kener should be served from a subpath (for example https://example.com/status) instead of domain root.
Quick setup
Set these values:
| Variable | Value for subpath setup |
|---|---|
KENER_BASE_PATH |
/status |
ORIGIN |
https://example.com |
Important
ORIGIN must be the site origin only (scheme + host + optional port), not the full /status URL.
Prebuilt Docker images for subpath
Use the prebuilt subpath tags:
docker.io/rajnandan1/kener:latest-statusdocker.io/rajnandan1/kener:latest-status-alpineghcr.io/rajnandan1/kener:latest-statusghcr.io/rajnandan1/kener:latest-status-alpine
Release tags follow the same pattern:
vX.Y.Z-statusvX.Y.Z-status-alpine
Run with Docker
docker run -d \
--name kener-status \
-p 3000:3000 \
-v "$(pwd)/database:/app/database" \
-e "KENER_SECRET_KEY=replace_with_a_random_string" \
-e "ORIGIN=https://example.com" \
-e "KENER_BASE_PATH=/status" \
-e "REDIS_URL=redis://host.docker.internal:6379" \
docker.io/rajnandan1/kener:latest-status
Run with Docker Compose
Use the provided docker-compose.status.yml file:
docker compose -f docker-compose.status.yml up -d
This compose file already sets:
image: rajnandan1/kener:latest-statusKENER_BASE_PATH: /status
Reverse proxy mapping
Your proxy path and KENER_BASE_PATH must match exactly.
For /status, proxy traffic to Kener on the same /status path.
For full examples, see Reverse Proxy Setup.
Verify setup
Check these URLs:
https://example.com/statushttps://example.com/status/healthcheck
If CSS/JS files 404, re-check:
KENER_BASE_PATHis set to/status- proxy path is also
/status - Kener was rebuilt/restarted after env changes