Vikunja

Source: Portainer stack 64 (vikunja) on endpoint 2.

version: "3" # Use version 3 of the docker-compose file format

# Service definitions for the big-bear-vikunja application
services:
  # Frontend service definition
  frontend:
    image: vikunja/frontend:0.22.1 # Docker image to use
    container_name: vikunja-frontend # Name of the container
    ports:
      - 8081:80 # Map port 8081 of the host to port 80 of the container
    environment:
      # Set the Vikunja API URL, replace [CHANGE_TO_YOUR_PORTAINER_IP] with the actual IP
      VIKUNJA_API_URL: http://10.10.10.237:3456/api/v1
    restart: unless-stopped # Restart policy
    networks:
      - vikunja-network # Network to connect to
    depends_on:
      - db # This service depends on the db service
      - api # and the api service

  # API service definition
  api:
    image: vikunja/api:0.22.1 # Docker image to use
    container_name: vikunja-api # Name of the container
    environment:
      # Vikunja API environment variables
      VIKUNJA_DATABASE_HOST: vikunja-db
      VIKUNJA_DATABASE_PASSWORD: ${REDACTED}
      VIKUNJA_DATABASE_TYPE: mysql
      VIKUNJA_DATABASE_USER: vikunja
      VIKUNJA_DATABASE_DATABASE: vikunja
      VIKUNJA_SERVICE_JWTSECRET: ${REDACTED}
      # Set the Vikunja frontend URL, replace <your public frontend url with slash> with the actual URL
      VIKUNJA_SERVICE_FRONTENDURL: http://<your public frontend url with slash>/
    ports:
      - 3456:3456 # Map port 3456 of the host to port 3456 of the container
    volumes:
      # Map container path to host path for files
      - vikunja_files:/app/vikunja/files
    restart: unless-stopped # Restart policy
    networks:
      - vikunja-network # Network to connect to
    depends_on:
      - db # This service depends on the db service

  # Database service definition
  db:
    image: mariadb:10 # Docker image to use
    container_name: vikunja-db # Name of the container
    command:
      - --character-set-server=utf8mb4 # Set the character set
      - --collation-server=utf8mb4_unicode_ci # Set the collation
    environment:
      # MariaDB environment variables
      MYSQL_ROOT_PASSWORD: ${REDACTED}
      MYSQL_USER: vikunja
      MYSQL_PASSWORD: ${REDACTED}
      MYSQL_DATABASE: vikunja
    volumes:
      # Map container path to host path for MariaDB data
      - vikunja_mysql:/var/lib/mysql
    restart: unless-stopped # Restart policy
    networks:
      - vikunja-network # Network to connect to

# Network definitions
networks:
  vikunja-network:
    driver: bridge # Use the bridge driver

# Volume definitions
volumes:
  vikunja_mysql:
    driver: local # Use the local driver
  vikunja_files:
    driver: local # Use the local driver

This page was last edited on 2026-06-14 01:44

Powered by Wiki|Docs

This page was last edited on 2026-06-14 01:44

MRDTECH Wiki / Engineer / Tech Enthusiast / Homelab Geek
No Copyright

Powered by Wiki|Docs