Docs / Self-Hosted Applications / How to Self-Host Vikunja Task Manager

How to Self-Host Vikunja Task Manager

By Admin · Mar 1, 2026 · Updated Apr 23, 2026 · 28 views · 1 min read

What Is Vikunja?

Vikunja is an open-source task management application. It provides project boards, lists, Gantt charts, and calendar views — a self-hosted alternative to Todoist, Trello, or Asana.

Requirements

  • A Breeze with at least 512 MB RAM
  • Docker and Docker Compose

Docker Compose Setup

mkdir -p /opt/vikunja && cd /opt/vikunja
cat > docker-compose.yml <<'EOF'
services:
  vikunja:
    image: vikunja/vikunja
    restart: unless-stopped
    ports:
      - "3456:3456"
    environment:
      VIKUNJA_DATABASE_HOST: db
      VIKUNJA_DATABASE_PASSWORD: vikunja_password
      VIKUNJA_DATABASE_TYPE: mysql
      VIKUNJA_DATABASE_USER: vikunja
      VIKUNJA_DATABASE_DATABASE: vikunja
      VIKUNJA_SERVICE_FRONTENDURL: https://tasks.yourdomain.com/
    volumes:
      - vikunja-files:/app/vikunja/files
    depends_on:
      - db

  db:
    image: mariadb:11
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: root_password
      MYSQL_DATABASE: vikunja
      MYSQL_USER: vikunja
      MYSQL_PASSWORD: vikunja_password
    volumes:
      - vikunja-db:/var/lib/mysql

volumes:
  vikunja-files:
  vikunja-db:
EOF

docker compose up -d

Features

  • Projects with list, board (Kanban), Gantt, and table views
  • Task priorities, labels, due dates, and reminders
  • File attachments
  • Team collaboration with sharing
  • CalDAV integration
  • Recurring tasks
  • REST API
  • Available as web, desktop, and mobile app

Was this article helpful?