docker-compose.yml environment block, in a .env file at the project root, or as system environment variables.
Required
These three variables must be set before Kener starts for the first time.| Variable | Description |
|---|---|
KENER_SECRET_KEY | Secret key used for session signing and CSRF protection. Generate with openssl rand -base64 32. Never reuse across instances. |
ORIGIN | The public URL of your Kener instance (e.g. http://localhost:3000 or https://status.example.com). Used for CSRF validation. For subpath deployments, set this to the root origin, not the subpath. |
REDIS_URL | Redis connection string (e.g. redis://localhost:6379). Kener uses Redis for BullMQ queues, caching, and the scheduler. |
App configuration
| Variable | Default | Description |
|---|---|---|
PORT | 3000 | Port the Node.js server listens on. |
KENER_BASE_PATH | (empty) | Set to a subpath (e.g. /status) when deploying Kener at a non-root URL. Requires the matching subpath image tag (e.g. latest-status). |
NODE_ENV | production | Already set in the Docker image. Do not change unless you know what you’re doing. |
BODY_SIZE_LIMIT | 3M | Maximum request body size for SvelteKit’s adapter-node. Increase if you need to upload larger images. |
Database
Kener supports SQLite (default), PostgreSQL, and MySQL via a singleDATABASE_URL variable.
| Variable | Default | Description |
|---|---|---|
DATABASE_URL | sqlite://./database/kener.sqlite.db | Database connection string. Omit to use the default SQLite path. |
Resend
| Variable | Description |
|---|---|
RESEND_API_KEY | API key from your Resend account. |
RESEND_SENDER_EMAIL | Sender address for outgoing emails (e.g. [email protected]). |
SMTP
| Variable | Default | Description |
|---|---|---|
SMTP_HOST | — | SMTP server hostname (e.g. smtp.mailgun.org). |
SMTP_PORT | — | SMTP port (typically 587 for TLS, 465 for SSL, 25 for unencrypted). |
SMTP_USER | — | SMTP authentication username. |
SMTP_PASSWORD | — | SMTP authentication password. |
SMTP_SENDER | — | Sender address for outgoing emails. |
SMTP_SECURE | 0 | Set to 1 to enable TLS. Set to 0 for STARTTLS or unencrypted. |
Redis
| Variable | Description |
|---|---|
REDIS_URL | Redis connection string (also listed under Required). Supports standard redis:// and rediss:// (TLS) formats. |
Minimal example
The smallest valid.env to start Kener: