53 lines
2.3 KiB
YAML
53 lines
2.3 KiB
YAML
services:
|
|
# ------------------------------------------------------------------
|
|
# Manga: Suwayomi -> Kavita mover + metadata enrichment
|
|
# ------------------------------------------------------------------
|
|
manga-mover-and-metadata-collector:
|
|
image: gitea.johannesbot.de/johannesbot/manga-mover-and-metadata-collector:latest
|
|
container_name: manga-mover-and-metadata-collector
|
|
restart: unless-stopped
|
|
environment:
|
|
KAVITA_URL: "${KAVITA_URL}"
|
|
KAVITA_API_KEY: "${KAVITA_API_KEY}"
|
|
LANGUAGE: "${LANGUAGE:-en}"
|
|
SETTLE_SECONDS: "${SETTLE_SECONDS:-600}"
|
|
DELETE_SOURCE: "${DELETE_SOURCE:-true}"
|
|
MATCH_PATH: "/config/matches.json"
|
|
# Volume/cover back-fill updater
|
|
UPDATER_ENABLED: "${UPDATER_ENABLED:-true}"
|
|
# Cron expression: "0 19 * * 1,4" = 19:00 every Monday and Thursday
|
|
# (local time, see TZ)
|
|
UPDATER_SCHEDULE: "${UPDATER_SCHEDULE:-0 19 * * 1,4}"
|
|
UPDATER_LOG: "/config/volume_updater.log"
|
|
# Persistent cover cache (empty = temp dir, deleted on container stop)
|
|
COVER_CACHE_PATH: "${COVER_CACHE_PATH:-/config/covers}"
|
|
# Per-step move timing stats (viewable at /perf); empty disables it
|
|
PERF_PATH: "${PERF_PATH:-/config/perf_stats.json}"
|
|
# Timezone for the cron schedule — without this 19:00 means 19:00 UTC
|
|
TZ: "${TZ:-Europe/Berlin}"
|
|
ports:
|
|
- "${MANGA_WEB_PORT:-8080}:8080"
|
|
volumes:
|
|
- "${HOST_SUWAYOMI_PATH}:/mnt/suwayomi"
|
|
- "${HOST_KAVITA_PATH}:/mnt/kavita"
|
|
- "${HOST_MANGA_CONFIG_PATH}:/config"
|
|
|
|
# ------------------------------------------------------------------
|
|
# Light novels: Kavita metadata fetcher (HTTP only, no file mover)
|
|
# ------------------------------------------------------------------
|
|
kavita-lightnovel-metadata-fetcher:
|
|
image: gitea.johannesbot.de/johannesbot/kavita-lightnovel-metadata-fetcher:latest
|
|
container_name: kavita-lightnovel-metadata-fetcher
|
|
restart: unless-stopped
|
|
environment:
|
|
KAVITA_URL: "${KAVITA_URL}"
|
|
KAVITA_API_KEY: "${KAVITA_API_KEY}"
|
|
LIBRARY_IDS: "${LN_LIBRARY_IDS}"
|
|
LANGUAGE: "${LANGUAGE:-en}"
|
|
MATCH_PATH: "/config/matches.json"
|
|
TZ: "${TZ:-Europe/Berlin}"
|
|
ports:
|
|
- "${LN_WEB_PORT:-8081}:8080"
|
|
volumes:
|
|
- "${HOST_LN_CONFIG_PATH}:/config"
|