feat(paperless): add Tika and Gotenberg sidecars

Enable Paperless Office/OpenDocument ingestion by wiring internal Tika and Gotenberg services into the documents stack. Adds PAPERLESS_TIKA_* environment keys to .env.example and places both sidecars on an internal-only network with resource limits.
This commit is contained in:
Fizzlepoof
2026-05-13 17:06:47 +00:00
parent 5fd46b20ca
commit 09a29b0b3a
2 changed files with 28 additions and 0 deletions

View File

@@ -2,6 +2,9 @@ PAPERLESS_DBUSER=paperless
PAPERLESS_DBPASS=changeme PAPERLESS_DBPASS=changeme
PAPERLESS_SECRET_KEY=generate_with_openssl_rand_hex_32 PAPERLESS_SECRET_KEY=generate_with_openssl_rand_hex_32
PAPERLESS_REDIS=redis://:URL_ENCODED_REDIS_PASSWORD@shared-redis:6379 PAPERLESS_REDIS=redis://:URL_ENCODED_REDIS_PASSWORD@shared-redis:6379
PAPERLESS_TIKA_ENABLED=1
PAPERLESS_TIKA_ENDPOINT=http://tika:9998
PAPERLESS_TIKA_GOTENBERG_ENDPOINT=http://gotenberg:3000
# ----------------------------- # -----------------------------
# Karakeep # Karakeep

View File

@@ -24,6 +24,12 @@ services:
PAPERLESS_TIME_ZONE: America/Chicago PAPERLESS_TIME_ZONE: America/Chicago
PAPERLESS_OCR_LANGUAGE: eng PAPERLESS_OCR_LANGUAGE: eng
PAPERLESS_URL: https://paperless.paccoco.com PAPERLESS_URL: https://paperless.paccoco.com
PAPERLESS_TIKA_ENABLED: ${PAPERLESS_TIKA_ENABLED}
PAPERLESS_TIKA_ENDPOINT: ${PAPERLESS_TIKA_ENDPOINT}
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: ${PAPERLESS_TIKA_GOTENBERG_ENDPOINT}
depends_on:
- tika
- gotenberg
healthcheck: healthcheck:
test: ["CMD-SHELL", "curl -sf http://127.0.0.1:8000/ || exit 1"] test: ["CMD-SHELL", "curl -sf http://127.0.0.1:8000/ || exit 1"]
interval: 30s interval: 30s
@@ -31,9 +37,26 @@ services:
retries: 3 retries: 3
start_period: 60s start_period: 60s
networks: networks:
- paperless-internal
- ix-databases_shared-databases - ix-databases_shared-databases
- pangolin - pangolin
tika:
image: apache/tika:latest
container_name: paperless-tika
restart: unless-stopped
mem_limit: 512m
networks:
- paperless-internal
gotenberg:
image: gotenberg/gotenberg:latest
container_name: paperless-gotenberg
restart: unless-stopped
mem_limit: 256m
networks:
- paperless-internal
karakeep: karakeep:
image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-release} image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-release}
container_name: karakeep container_name: karakeep
@@ -95,6 +118,8 @@ services:
- karakeep - karakeep
networks: networks:
paperless-internal:
name: documents_paperless_internal
ix-databases_shared-databases: ix-databases_shared-databases:
external: true external: true
pangolin: pangolin: