Kairso web app — Next.js front end with runtime config (part of the Kairso self-host stack)
189
The web app for Kairso — a workspace, project, KPI, attendance and initiative management platform. This image is the Next.js front end and also proxies REST calls to the backend so the signing secret never reaches the browser.
linux/amd64, linux/arm64latest, and a version tag per release (e.g. v0.0.1)kairso-web is one half of a stack (the other is alexcao194/kairso-server). Run the whole stack with the self-host bundle:
# in deploy/selfhost
cp .env.example .env # fill in secrets + Firebase
docker compose up -d
Then open http://localhost:8080 (or your PUBLIC_URL).
This image is built once and configured at runtime — the same image runs on any domain without rebuilding. On startup an entrypoint writes /env-config.js from environment variables, so Firebase config and the WebSocket origin are injected when the container starts, not baked into the bundle.
| Variable | Purpose |
|---|---|
APP_TOKEN_SECRET | HMAC shared with the backend — must match kairso-server |
NEXT_PUBLIC_BASE_URL | Backend REST base the proxy forwards to |
FIREBASE_API_KEY / FIREBASE_AUTH_DOMAIN / FIREBASE_PROJECT_ID / FIREBASE_APP_ID / FIREBASE_MESSAGING_SENDER_ID / FIREBASE_STORAGE_BUCKET | Firebase client config for sign-in |
A single nginx entry point routes everything on one origin:
/ → this web app/ws → kairso-server (realtime WebSocket)/cdn/ → object storage (files/images) when using the bundled MinIOSee the Install & self-host guide for the full walkthrough, HTTPS setup and bring-your-own database/storage options.
Content type
Image
Digest
sha256:2a00c31da…
Size
70.4 MB
Last updated
1 day ago
docker pull alexcao194/kairso-web