74 lines
No EOL
2.1 KiB
YAML
74 lines
No EOL
2.1 KiB
YAML
services:
|
|
broker:
|
|
image: docker.io/library/redis:8
|
|
restart: unless-stopped
|
|
volumes:
|
|
- redisdata:/data
|
|
db:
|
|
image: docker.io/library/postgres:17
|
|
restart: unless-stopped
|
|
volumes:
|
|
- pgdata:/var/lib/postgresql/data
|
|
environment:
|
|
POSTGRES_DB: paperless
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
webserver:
|
|
image: ghcr.io/paperless-ngx/paperless-ngx:latest
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
- broker
|
|
- gotenberg
|
|
- tika
|
|
ports:
|
|
- "8000:8000"
|
|
volumes:
|
|
- data:/usr/src/paperless/data
|
|
- media:/usr/src/paperless/media
|
|
- ./data:/usr/src/paperless
|
|
environment:
|
|
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
|
|
PAPERLESS_OCR_LANGUAGES: eng kor
|
|
PAPERLESS_OCR_LANGUAGE: eng
|
|
PAPERLESS_DBUSER: ${POSTGRES_USER}
|
|
PAPERLESS_DBPASS: ${POSTGRES_PASSWORD}
|
|
PAPERLESS_ALLOWED_HOSTS: ${PAPERLESS_ALLOWED_HOSTS}
|
|
PAPERLESS_CSRF_TRUSTED_ORIGINS: ${PAPERLESS_CSRF_TRUSTED_ORIGINS}
|
|
gotenberg:
|
|
image: docker.io/gotenberg/gotenberg:8.20
|
|
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
|
|
syncthing:
|
|
image: syncthing/syncthing:latest
|
|
container_name: syncthing
|
|
hostname: syncthing
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
volumes:
|
|
- ./data:/var/syncthing/config/data
|
|
ports:
|
|
- "8384:8384" # Web UI
|
|
- "22000:22000/tcp" # File transfers
|
|
- "22000:22000/udp" # File transfers
|
|
- "21027:21027/udp" # Discovery
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
data:
|
|
media:
|
|
pgdata:
|
|
redisdata: |