Files
Portainer/vikunja/docker-compose.yml
T
2026-07-25 11:21:08 +00:00

70 lines
2.2 KiB
YAML

services:
vikunja-db:
image: postgres:17-alpine
container_name: vikunja-db
restart: unless-stopped
labels:
prune.protect: "true"
environment:
TZ: ${TZ}
POSTGRES_DB: ${VIKUNJA_DB_NAME}
POSTGRES_USER: ${VIKUNJA_DB_USER}
POSTGRES_PASSWORD: ${VIKUNJA_DB_PASSWORD}
volumes:
- /opt/vikunja/postgres:/var/lib/postgresql/data:Z
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${VIKUNJA_DB_USER} -d ${VIKUNJA_DB_NAME}"]
interval: 10s
timeout: 5s
retries: 10
start_period: 20s
networks:
- vikunja_internal
vikunja:
image: vikunja/vikunja@sha256:f6b80393c1998cd5cd0dc38d24762c59ab4c10000a6f1032ef5b554e262cab93
container_name: vikunja
restart: unless-stopped
user: "1000:1000"
depends_on:
vikunja-db:
condition: service_healthy
environment:
TZ: ${TZ}
VIKUNJA_SERVICE_PUBLICURL: https://${VIKUNJA_DOMAIN}/
VIKUNJA_SERVICE_JWTSECRET: ${VIKUNJA_JWT_SECRET}
VIKUNJA_DATABASE_TYPE: postgres
VIKUNJA_DATABASE_HOST: vikunja-db
VIKUNJA_DATABASE_PORT: 5432
VIKUNJA_DATABASE_DATABASE: ${VIKUNJA_DB_NAME}
VIKUNJA_DATABASE_USER: ${VIKUNJA_DB_USER}
VIKUNJA_DATABASE_PASSWORD: ${VIKUNJA_DB_PASSWORD}
VIKUNJA_SERVICE_ENABLECALDAV: "true"
VIKUNJA_MAILER_ENABLED: ${VIKUNJA_MAILER_ENABLED}
VIKUNJA_MAILER__SMTP__HOST: ${VIKUNJA_MAILER_SMTP_HOST}
VIKUNJA_MAILER__SMTP__PORT: ${VIKUNJA_MAILER_SMTP_PORT}
VIKUNJA_MAILER__SMTP__AUTHTYPE: ${VIKUNJA_MAILER_SMTP_AUTHTYPE}
VIKUNJA_MAILER__SMTP__USER: ${VIKUNJA_MAILER_SMTP_USER}
VIKUNJA_MAILER__SMTP__PASSWORD: ${VIKUNJA_MAILER_SMTP_PASSWORD}
VIKUNJA_MAILER__FROMEMAIL: ${VIKUNJA_MAILER_FROMEMAIL}
VIKUNJA_SERVICE_ENABLEEMAILREMINDERS: ${VIKUNJA_SERVICE_ENABLEEMAILREMINDERS}
VIKUNJA_SERVICE_ENABLEREGISTRATION: "false"
volumes:
- /opt/vikunja/files:/app/vikunja/files:Z
networks:
- vikunja_internal
- mail_internal
- proxy
labels:
prune.protect: "true"
traefik.enable: "true"
traefik.docker.network: "proxy"
networks:
vikunja_internal:
driver: bridge
mail_internal:
external: true
proxy:
external: true