[Quadlet] DefaultDependencies=false [Unit] Description=Paperless After=redis_paperless.service Wants=redis_paperless.service [Container] Image=ghcr.io/paperless-ngx/paperless-ngx:{{ version['containers']['paperless'] }} ContainerName=paperless HostName=paperless PublishPort={{ services['paperless']['ports']['http'] }}:8000/tcp # Volumes Volume=%h/data/containers/paperless/data:/usr/src/paperless/data:rw Volume=%h/data/containers/paperless/media:/usr/src/paperless/media:rw Volume=%h/data/containers/paperless/consume:/usr/src/paperless/consume:rw Volume=%h/containers/paperless/ssl:/etc/ssl/paperless:ro # General Environment="TZ=Asia/Seoul" Environment="PAPERLESS_TIME_ZONE=Asia/Seoul" Environment="PAPERLESS_URL=https://{{ services['paperless']['domain']['public'] }}.{{ domain['public'] }}" Environment="PAPERLESS_OCR_LANGUAGE=kor+eng" Environment="PAPERLESS_OCR_LANGUAGES=kor" # Environment="PAPERLESS_OCR_MODE=force" # Environment="PAPERLESS_TASK_WORKERS=1" # Environment="PAPERLESS_THREADS_PER_WORKER=1" Environment="PAPERLESS_WORKER_TIMEOUT=7200" Secret=PAPERLESS_SECRET_KEY,type=env # Redis Environment="PAPERLESS_REDIS=redis://host.containers.internal:{{ services['paperless']['ports']['redis'] }}" # Database Environment="PAPERLESS_DBHOST={{ services['postgresql']['domain'] }}.{{ domain['internal'] }}" Environment="PAPERLESS_DBPORT={{ services['postgresql']['ports']['tcp'] }}" Environment="PAPERLESS_DBNAME=paperless_db" Environment="PAPERLESS_DBUSER=paperless" Environment="PAPERLESS_DBSSLMODE=verify-full" Environment="PAPERLESS_DBSSLROOTCERT=/etc/ssl/paperless/{{ root_cert_filename }}" Secret=PAPERLESS_DBPASS,type=env # OIDC Environment="PAPERLESS_APPS=allauth.socialaccount.providers.openid_connect" Environment="PAPERLESS_SOCIAL_AUTO_SIGNUP=true" Environment="PAPERLESS_SOCIALACCOUNT_ALLOW_SIGNUPS=true" Secret=PAPERLESS_SOCIALACCOUNT_PROVIDERS,type=env [Service] ExecStartPre=/usr/bin/nc -zv {{ services['postgresql']['domain'] }}.{{ domain['internal'] }} {{ services['postgresql']['ports']['tcp'] }} Restart=always RestartSec=10s TimeoutStopSec=120 [Install] WantedBy=default.target