Files
homelab-docker-compose-prod/paperless-ngx/docker-compose.yaml
2026-02-06 09:58:36 +00:00

48 lines
1.5 KiB
YAML

services:
broker:
image: docker.io/library/redis:8
restart: unless-stopped
volumes:
- /docker/paperless-ngx/redis/data:/data
db:
image: docker.io/library/postgres:18
restart: unless-stopped
volumes:
- /docker/paperless-ngx/postgresql/data:/var/lib/postgresql
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
ports:
- "8025:8000"
volumes:
- /docker/paperless-ngx/data:/usr/src/paperless/data
- /docker/paperless-ngx/media:/usr/src/paperless/media
- /docker/paperless-ngx/export:/usr/src/paperless/export
- /docker/paperless-ngx/consume:/usr/src/paperless/consume
environment:
PAPERLESS_URL: https://paperlessngx.fireflylab.cc
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
gotenberg:
image: docker.io/gotenberg/gotenberg:8.25
restart: unless-stopped
# The gotenberg chromium route is used to convert .eml files. We do not
# want to allow external content like tracking pixels or even javascript.
command:
- "gotenberg"
- "--chromium-disable-javascript=true"
- "--chromium-allow-list=file:///tmp/.*"
tika:
image: docker.io/apache/tika:latest
restart: unless-stopped