Productivity, checked 2026-09-07

Vikunja: Docker configuration reference

Self-hosted task and project management with lists, Kanban, Gantt charts and a CalDAV endpoint.

At a glance

Ports

Ports
PortWhat listensSource
3456HTTP listener for both the API and the bundled frontend, served from a single container since the API, frontend and desktop repos were merged in v0.23.0.source for port 3456

Environment variables

Environment variables
VariableRequiredWhat it doesExampleSource
VIKUNJA_SERVICE_PUBLICURLYesPublic URL Vikunja is reachable on, trailing slash included. Used to build links in emails and the frontend's API calls.https://tasks.example.com/source for VIKUNJA_SERVICE_PUBLICURL
VIKUNJA_SERVICE_SECRETYesSecret used to sign JWT auth tokens. Must be set explicitly; changing it later invalidates every existing session.a long random stringsource for VIKUNJA_SERVICE_SECRET
VIKUNJA_DATABASE_TYPEYesDatabase backend: postgres, mysql or sqlite. The documented compose examples default to postgres.postgressource for VIKUNJA_DATABASE_TYPE
VIKUNJA_DATABASE_HOSTNoDatabase hostname, required when VIKUNJA_DATABASE_TYPE is postgres or mysql rather than sqlite.dbsource for VIKUNJA_DATABASE_HOST

Volumes that must persist

Volumes
PathWhat is in itSource
/app/vikunja/filesTask attachments and uploaded files. Vikunja runs as uid 1000 and needs this directory writable by that user, or as root under rootless Docker.source for /app/vikunja/files
/var/lib/postgresql (db)Postgres data directory in the documented compose example, holding every project, task and user.source for /var/lib/postgresql

Behind a reverse proxy

What it needs alongside it

Dependencies
DependencyWhySource
PostgreSQL, MySQL, MariaDB or SQLiteApplication database. The documented walkthrough pairs Vikunja with postgres:18; MySQL and MariaDB need explicit utf8mb4 configuration for non-Latin characters.source for PostgreSQL, MySQL, MariaDB or SQLite

Release timeline

Releases
VersionDateBreakingWhat changedSource
v2.6.02026-08-31No380 commits including 18 security fixes, plus importing from Planka and previews for image, audio and video attachments.source for release v2.6.0
v2.5.02026-08-04NoFixes a share link that could act as another user, and batches quick add magic pastes into one request.source for release v2.5.0
v2.4.02026-07-19NoTen security fixes, the first Vikunja Pro features, and a new v2 API.source for release v2.4.0
v2.3.02026-04-09NoEleven security fixes, a new plugin system, and support for Vikunja acting as an OAuth 2.0 provider.source for release v2.3.0
v2.2.22026-03-23NoNine security fixes including a critical chain that could expose instance-wide data, plus centralised SSRF protection.source for release v2.2.2

If it is not coming up

Read from the upstream documentation, repository and container registry by Keita Emsden on 2026-09-07. Every row links the page it came from. Upstream changes without telling anyone, so check the source link before you rely on a value.

Other app references

All app references