services: paperless_redis: image: redis:alpine networks: - homelab deploy: replicas: 1 placement: constraints: - node.hostname == p0 paperless_webserver: image: ghcr.io/paperless-ngx/paperless-ngx:latest ports: - 8000:8000 volumes: - /mnt/swarm-data/paperless/data:/usr/src/paperless/data - /mnt/swarm-data/paperless/media:/usr/src/paperless/media - /mnt/swarm-data/paperless/export:/usr/src/paperless/export - /mnt/gmail-exports/documents:/usr/src/paperless/consume secrets: - postgres-master - paperless-secret-key - paperless-admin-pass environment: - PAPERLESS_REDIS=redis://paperless_redis:6379 - PAPERLESS_DBHOST=postgres - PAPERLESS_DBNAME=paperless - PAPERLESS_DBUSER=admin - PAPERLESS_DBPASS_FILE=/run/secrets/postgres-master - PAPERLESS_SECRET_KEY_FILE=/run/secrets/paperless-secret-key - PAPERLESS_TIME_ZONE=America/New_York - PAPERLESS_OCR_LANGUAGE=eng - PAPERLESS_URLS=https://docs.frostlabs.home - PAPERLESS_ALLOWED_HOSTS=docs.frostlabs.home - PAPERLESS_CONSUMER_POLLING=5 - PAPERLESS_CONSUMER_DELETE_DUPLICATES=true - PAPERLESS_CONSUMER_RECURSIVE=true - PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS=false - PAPERLESS_CONSUMER_IGNORE_PATTERNS=[".DS_Store","._*",".stfolder",".stversions","Thumbs.db"] - PAPERLESS_ENABLE_CLASSIFIER=true - PAPERLESS_ADMIN_USER=admin - PAPERLESS_ADMIN_PASSWORD_FILE=/run/secrets/paperless-admin-pass - PAPERLESS_ADMIN_MAIL=john.allisonwin@outlook.com networks: - homelab deploy: replicas: 1 placement: constraints: - node.hostname == p0 depends_on: - postgres - paperless_redis networks: homelab: external: true secrets: paperless-admin-pass: external: true paperless-secret-key: external: true postgres-master: external: true