Skip to main content
Upstream source: Current installation guide. The official image uses SQLite at /db/vikunja.db by default and stores uploads in /app/vikunja/files. Both paths need persistent volumes. SQLite is suitable for a small installation; use PostgreSQL or MySQL for a larger team.

Towbar manifest

.towbar/services/vikunja.service.yml

Configure

  1. Prepare the example server, connect the repository, and map production to the branch containing these manifests. Replace the example server IP and domain. Commit the manifests, then sync the repository and inspect the resolved configuration.
  2. Set the Service’s declared runtime values under Service → Settings → Secrets using the table below. Replace descriptions and placeholders with actual values; do not commit passwords or keys.
  3. Keep the Service’s named volumes attached across deployments. Towbar’s Datastore backup policy does not back up Service volumes, so include them in your own recovery plan.
  4. Deploy the Service, then perform the checks below before enabling auto-deploy.

Runtime values

Save these values on the Service after the repository sync. The manifest declares required keys, not their values.

Verify

Create a project and task, attach a file, and verify all three survive redeployment. If the database cannot be opened, check that the container’s UID 1000 can write to both volumes. For field constraints, see Service manifest.
Last modified on September 27, 2026