62 lines
1.9 KiB
YAML
62 lines
1.9 KiB
YAML
version: '3'
|
|
|
|
services:
|
|
db:
|
|
image: postgres:16.8@sha256:74e7a26f7db1d5bbce23b4132fb4855ed0987ec9dc44f6d078ba8800892dc927
|
|
restart: unless-stopped
|
|
volumes:
|
|
- db-data:/var/lib/postgresql/data
|
|
environment:
|
|
- POSTGRES_PASSWORD=${DC_VIKUNJA_POSTGRES_PASSWORD:?}
|
|
- POSTGRES_DB=${DC_VIKUNJA_POSTGRES_DB:-db}
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- vikunja
|
|
|
|
vikunja:
|
|
image: vikunja/vikunja:0.24.6@sha256:ed1f3ed467fecec0b57e9de7bc6607f8bbcbb23ffced6a81f5dfefc794cdbe3b
|
|
environment:
|
|
VIKUNJA_DATABASE_HOST: db
|
|
VIKUNJA_DATABASE_PASSWORD: ${DC_VIKUNJA_POSTGRES_PASSWORD:?}
|
|
VIKUNJA_DATABASE_TYPE: postgres
|
|
VIKUNJA_DATABASE_USER: postgres
|
|
VIKUNJA_DATABASE_DATABASE: ${DC_VIKUNJA_POSTGRES_DB:-db}
|
|
VIKUNJA_SERVICE_PUBLICURL: https://${DC_VIKUNJA_HOSTNAME:?}
|
|
VIKUNJA_SERVICE_JWTSECRET: ${DC_VIKUNJA_JWTSECRET:?}
|
|
VIKUNJA_SERVICE_ENABLETASKATTACHMENTS: 1
|
|
VIKUNJA_SERVICE_ENABLEREGISTRATION: 1
|
|
VIKUNJA_SERVICE_ENABLEEMAILREMINDERS: 1
|
|
VIKUNJA_MAILER_ENABLED: 1
|
|
VIKUNJA_MAILER_FORCESSL: 1
|
|
VIKUNJA_MAILER_HOST: ${DC_VIKUNJA_SMTP_HOST:-mail.martin.md}
|
|
VIKUNJA_MAILER_PORT: ${DC_VIKUNJA_SMTP_PORT:-587}
|
|
VIKUNJA_MAILER_USERNAME: ${DC_VIKUNJA_SMTP_USER:-noreply@martin.md}
|
|
VIKUNJA_MAILER_PASSWORD: ${DC_VIKUNJA_SMTP_PWD:?}
|
|
volumes:
|
|
- files:/app/vikunja/files
|
|
- /srv/docker/vikunja-config.yml:/app/vikunja/config.yml
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.vikunja.rule=Host(`${DC_VIKUNJA_HOSTNAME:?}`)"
|
|
- "traefik.http.routers.vikunja.entrypoints=websecure"
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
networks:
|
|
- vikunja
|
|
- traefik
|
|
|
|
networks:
|
|
vikunja:
|
|
external: false
|
|
traefik:
|
|
external: true
|
|
|
|
volumes:
|
|
db-data:
|
|
files:
|