homelab-codex-ws/services/paperless-worker/service.yaml
Oskar Kapala 7e5577c58f feat(kb): configi Paperless/Nextcloud wg 9 decyzji — NC na PIHA, domeny kapala, Redis requirepass, backup SOLARIA, NC pin 34
Co zrobione:
- Nextcloud host = PIHA (always-on dla aktywnego uzycia), owner_node +
  LAN_BIND_IP/TRUSTED_PROXIES w .env, README zaktualizowane
- Redis brokera Paperlessa: requirepass, PAPERLESS_REDIS_PASSWORD w .env
  po obu stronach (PIHA + worker@SOLARIA), healthchecki z auth
- Domeny potwierdzone: paper.kapala.org, cloud.kapala.org (Cloudflare
  DNS-only -> Tailscale PIHA, wildcard cert juz pokrywa) — udokumentowane,
  nic nie utworzone
- Backup Paperlessa zatwierdzony: document_exporter + rsync/borg -> SOLARIA,
  retencja 7/4/6, offsite jako future-note
- Nextcloud pin: 34-apache (zweryfikowany aktualny stable, endoflife.date)
- Whoosh fallback-worker: zaakceptowane bez zmian
- Porty/wylaczenie local login/sizing OCR-workera: przeniesione z "decyzji"
  na "TODO przy deployu"
- DECYZJE-do-podjecia.md zaktualizowane: wszystko poza portami/loginem/
  sizingiem przeniesione do "Rozstrzygniete"

Tylko edycja configow w repo — nic nie zdeployowane, zadne kontenery nie
byly ruszane, DNS/vhosty nie utworzone.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-09 16:17:27 +02:00

34 lines
1.6 KiB
YAML

service:
name: paperless-worker
owner_node: solaria
role: ocr-compute-worker # heavy OCR for paperless@PIHA; "compute on-demand z fallback" pattern
exposure: local-only # no listening ports at all — outbound-only celery worker
dependencies:
- paperless # broker (redis 192.168.31.5:6380), DB (:5434) and NFS storage @ PIHA
ports: [] # none — connects out, serves nothing
healthcheck:
type: command
# celery ping through the broker: proves both broker reachability and a
# live worker process. Runs inside the container.
endpoint: docker exec paperless-worker celery --app paperless inspect ping --timeout 10
interval: 60s
timeout: 15s
retries: 3
restart_policy: unless-stopped
# SOLARIA is a session-availability node: this worker being down is a NORMAL
# state, not an incident. Queued OCR tasks wait in Redis@PIHA (AOF) and the
# built-in concurrency-1 worker on PIHA grinds slowly meanwhile.
persistence:
# Nothing to back up here — all document state lives on PIHA (owner:
# services/paperless). The NFS volumes below are mounts of PIHA data,
# backed up on the PIHA side.
paths: []
runtime:
config_files:
- .env # secrets shared with paperless@PIHA (gitignored, from env.example)
env_vars:
- PAPERLESS_SECRET_KEY # MUST equal the value on PIHA
- PAPERLESS_DBPASS # MUST equal the value on PIHA
- PAPERLESS_REDIS_PASSWORD # MUST equal the value on PIHA (broker requirepass)
- WORKER_CONCURRENCY # optional, default 4 — parallel OCR tasks