services: paperless: image: ghcr.io/paperless-ngx/paperless-ngx:2.20.15@sha256:6c86cad803970ea782683a8e80e7403444c5bf3cf70de63b4d3c8e87500db92f container_name: paperless-ngx restart: unless-stopped security_opt: - no-new-privileges:true environment: - PAPERLESS_TIKA_ENABLED=0 - PAPERLESS_DBENGINE=postgresql - PAPERLESS_DBHOST=postgresql17 - PAPERLESS_DBNAME=paperless - PAPERLESS_DBUSER=paperless - PAPERLESS_DBPASS=${PAPERLESS_DBPASS} - PAPERLESS_REDIS=${PAPERLESS_REDIS} - PAPERLESS_TIME_ZONE=Europe/Berlin - PAPERLESS_OCR_LANGUAGE=deu+eng - PAPERLESS_URL=https://paperless.kaleschke.info # Barcode / ASN - PAPERLESS_CONSUMER_ENABLE_BARCODES=1 - PAPERLESS_CONSUMER_ENABLE_ASN_BARCODE=1 - PAPERLESS_CONSUMER_ASN_BARCODE_PREFIX=ASN # Erkennung robuster für kleine Labels - PAPERLESS_CONSUMER_BARCODE_DPI=600 - PAPERLESS_CONSUMER_BARCODE_UPSCALE=1.5 # Optional: alle Seiten prüfen - PAPERLESS_CONSUMER_BARCODE_MAX_PAGES=0 volumes: - /mnt/user/documents/scans_inbox:/usr/src/paperless/consume - /mnt/user/appdata/paperless-ngx/data:/usr/src/paperless/data - /mnt/user/documents/paperless/export:/usr/src/paperless/export - /mnt/user/documents/paperless:/usr/src/paperless/media networks: - frontend_net - backend_net labels: - "traefik.enable=true" - "traefik.docker.network=frontend_net" - "traefik.http.routers.paperless.rule=Host(`paperless.kaleschke.info`)" - "traefik.http.routers.paperless.entrypoints=websecure" - "traefik.http.routers.paperless.tls=true" - "traefik.http.routers.paperless.tls.certresolver=le" - "traefik.http.services.paperless.loadbalancer.server.port=8000" networks: frontend_net: external: true backend_net: external: true