diff --git a/paperless/docker-compose.yaml b/paperless/docker-compose.yaml new file mode 100644 index 0000000..2da48dd --- /dev/null +++ b/paperless/docker-compose.yaml @@ -0,0 +1,72 @@ +services: + + broker: + image: redis:${REDIS_VERSION} + restart: unless-stopped + networks: + - paperless + volumes: + - ${VOLUMES_PATH}/paperless/redis:/data + labels: + - "docker.group=paperless" + + db: + image: postgres:${POSTGRES_VERSION} + restart: unless-stopped + networks: + - paperless + volumes: + - ${VOLUMES_PATH}/paperless/postgres:/var/lib/postgresql/data + environment: + - POSTGRES_DB=${POSTGRES_DB} + - POSTGRES_USER=${POSTGRES_USER} + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} + labels: + - "docker.group=paperless" + + webserver: + image: ghcr.io/paperless-ngx/paperless-ngx:${PAPERLESS_NGX_VERSION} + restart: unless-stopped + networks: + - paperless + - web + depends_on: + - db + - broker + healthcheck: + test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"] + interval: 30s + timeout: 10s + retries: 5 + volumes: + - ${VOLUMES_PATH}/paperless/data:/usr/src/paperless/data + - ${VOLUMES_PATH}/paperless/scripts:/usr/src/paperless/scripts + - ${MEDIA_PATH}:/usr/src/paperless/media + - ${EXPORT_PATH}:/usr/src/paperless/export + - ${CONSUME_PATH}:/usr/src/paperless/consume + environment: + - PAPERLESS_REDIS=redis://broker:6379 + - PAPERLESS_DBHOST=${POSTGRES_DB} + - PAPERLESS_DBUSER=${POSTGRES_USER} + - PAPERLESS_DBPASS=${POSTGRES_PASSWORD} + - PAPERLESS_OCR_LANGUAGES=deu eng + - PAPERLESS_URL=http://paperless.${DOMAIN} + - PAPERLESS_OCR_LANGUAGE=deu + - PAPERLESS_FILENAME_FORMAT={correspondent}/{created} {title} + - PAPERLESS_CONSUMER_POLLING=60 + - USERMAP_UID=1000 + - USERMAP_GID=1000 + - PAPERLESS_PRE_CONSUME_SCRIPT=/usr/src/paperless/scripts/removePdfPassword.py + labels: + - "traefik.enable=true" + - "traefik.http.routers.paperless.rule=Host(`paperless.${DOMAIN}`)" + - "traefik.http.routers.paperless.entrypoints=web" + - "traefik.http.services.paperless.loadbalancer.server.port=8000" + - "traefik.docker.network=web" + - "docker.group=paperless" + + +networks: + paperless: + web: + external: true diff --git a/start-all.sh b/start-all.sh index 358a77b..5a906ea 100755 --- a/start-all.sh +++ b/start-all.sh @@ -14,3 +14,4 @@ up download; up torrent; up print; up media; +up paperless;