#976 — Kener v4 requires Redis for its BullMQ queues, caching and scheduler. The template did not provide one, so the container configured SQLite, ran migrations/seed, printed Kener is running on port 3000! and then immediately crashed with Error: REDIS_URL is not defined in environment variables.
#282 — The template deployed both a postgres and a mariadb service while DATABASE_URL pointed at SQLite, so neither database was ever used (pure bloat, plus two unused generated passwords).
Fix
Aligned the template with the upstream docker-compose.yml from rajnandan1/kener:
Added a redis:7-alpine service with a healthcheck and a persistent kener_redis volume; set REDIS_URL=redis://redis:6379 and made kener depend on redis being healthy.
Removed the unused postgres and mysql services and all their env vars/passwords. SQLite (the upstream default) stays, persisted in the kener_db volume.
Set ORIGIN to https://${main_domain} instead of http://localhost:3000 so CSRF protection works behind the generated domain.
Dropped the stale /app/uploads bind mount (kener v4 only persists /app/database) and the obsolete compose version key.
Deploy test evidence
Deployed on a Dokploy instance from this branch:
Deploy completed in 82s; both containers (kener, redis) running and stable after 30s (no restart loop).
App log: migrations and seed completed, schedulers started (ADDING NEW SCHEDULER: kener/earth, maintenance + daily cleanup schedulers), banner Kener version 4.1.2 is running! — no REDIS_URL error.
Generated domain returns HTTP 200 with title Home - Kener.ing.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/Dokploy/templates/pull/997
**Author:** [@Siumauricio](https://github.com/Siumauricio)
**Created:** 7/14/2026
**Status:** ✅ Merged
**Merged:** 7/14/2026
**Merged by:** [@Siumauricio](https://github.com/Siumauricio)
**Base:** `canary` ← **Head:** `fix/kener-issues`
---
### 📝 Commits (1)
- [`744ff52`](https://github.com/Dokploy/templates/commit/744ff5277015bf62114140700c28681abcf3f41c) fix(kener): define REDIS_URL and drop unused databases
### 📊 Changes
**2 files changed** (+17 additions, -39 deletions)
<details>
<summary>View changed files</summary>
📝 `blueprints/kener/docker-compose.yml` (+15 -19)
📝 `blueprints/kener/template.toml` (+2 -20)
</details>
### 📄 Description
## What was broken
- **#976** — Kener v4 requires Redis for its BullMQ queues, caching and scheduler. The template did not provide one, so the container configured SQLite, ran migrations/seed, printed `Kener is running on port 3000!` and then immediately crashed with `Error: REDIS_URL is not defined in environment variables`.
- **#282** — The template deployed both a `postgres` and a `mariadb` service while `DATABASE_URL` pointed at SQLite, so neither database was ever used (pure bloat, plus two unused generated passwords).
## Fix
Aligned the template with the upstream `docker-compose.yml` from [rajnandan1/kener](https://github.com/rajnandan1/kener):
- Added a `redis:7-alpine` service with a healthcheck and a persistent `kener_redis` volume; set `REDIS_URL=redis://redis:6379` and made `kener` depend on redis being healthy.
- Removed the unused `postgres` and `mysql` services and all their env vars/passwords. SQLite (the upstream default) stays, persisted in the `kener_db` volume.
- Set `ORIGIN` to `https://${main_domain}` instead of `http://localhost:3000` so CSRF protection works behind the generated domain.
- Dropped the stale `/app/uploads` bind mount (kener v4 only persists `/app/database`) and the obsolete compose `version` key.
## Deploy test evidence
Deployed on a Dokploy instance from this branch:
- Deploy completed in 82s; both containers (`kener`, `redis`) running and stable after 30s (no restart loop).
- App log: migrations and seed completed, schedulers started (`ADDING NEW SCHEDULER: kener/earth`, maintenance + daily cleanup schedulers), banner `Kener version 4.1.2 is running!` — no `REDIS_URL` error.
- Generated domain returns HTTP 200 with title `Home - Kener.ing`.
- `node build-scripts/generate-meta.js --check` passes (476 templates validated).
Closes #976
Closes #282
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/Dokploy/templates/pull/997
Author: @Siumauricio
Created: 7/14/2026
Status: ✅ Merged
Merged: 7/14/2026
Merged by: @Siumauricio
Base:
canary← Head:fix/kener-issues📝 Commits (1)
744ff52fix(kener): define REDIS_URL and drop unused databases📊 Changes
2 files changed (+17 additions, -39 deletions)
View changed files
📝
blueprints/kener/docker-compose.yml(+15 -19)📝
blueprints/kener/template.toml(+2 -20)📄 Description
What was broken
Kener is running on port 3000!and then immediately crashed withError: REDIS_URL is not defined in environment variables.postgresand amariadbservice whileDATABASE_URLpointed at SQLite, so neither database was ever used (pure bloat, plus two unused generated passwords).Fix
Aligned the template with the upstream
docker-compose.ymlfrom rajnandan1/kener:redis:7-alpineservice with a healthcheck and a persistentkener_redisvolume; setREDIS_URL=redis://redis:6379and madekenerdepend on redis being healthy.postgresandmysqlservices and all their env vars/passwords. SQLite (the upstream default) stays, persisted in thekener_dbvolume.ORIGINtohttps://${main_domain}instead ofhttp://localhost:3000so CSRF protection works behind the generated domain./app/uploadsbind mount (kener v4 only persists/app/database) and the obsolete composeversionkey.Deploy test evidence
Deployed on a Dokploy instance from this branch:
kener,redis) running and stable after 30s (no restart loop).ADDING NEW SCHEDULER: kener/earth, maintenance + daily cleanup schedulers), bannerKener version 4.1.2 is running!— noREDIS_URLerror.Home - Kener.ing.node build-scripts/generate-meta.js --checkpasses (476 templates validated).Closes #976
Closes #282
🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.