kb/services/paperless.md (Stack, OIDC, Storage i backup, RAM na PIHA) kb/decisions/paperless-split-ocr.md (split OCR serwis@PIHA + worker@SOLARIA) kb/runbooks/paperless-cutover.md (cutover checklist) Tresc sekcji nietknieta; kontrola multizbioru linii == oryginal. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1.3 KiB
1.3 KiB
| okf | type | visibility | status | updated | links | ||
|---|---|---|---|---|---|---|---|
| 0.1 | decision | private | active | 2026-07-09 |
|
Paperless — decyzja: split OCR serwis@PIHA + worker@SOLARIA
Split OCR: serwis@PIHA + worker@SOLARIA (wynik badania)
Rozproszony worker nie jest oficjalnie wspierany przez Paperless-ngx, ale
jest wykonalny i potwierdzony przez maintainerów (GH discussion #3900): drugi
host odpala ten sam obraz z command: celery --app paperless worker i musi
widzieć ten sam Redis, tego samego Postgresa i te same pliki. Stąd:
- storage dokumentów leży na PIHA (bind mounty
/opt/homelab/data/paperless/*) i jest eksportowany przez NFS po LAN (nie Tailscale) do SOLARII; - ścieżki w kontenerze (
/usr/src/paperless/{data,media,consume}) muszą być identyczne po obu stronach — payloady zadań i DB niosą ścieżki absolutne; - pliki mają właściciela numerycznego UID 1000 (
USERMAP_UID/GID=1000po obu stronach) — NFS przenosi numeryczne ID, nie nazwy; - wbudowany worker na PIHA (nie da się go wyłączyć w stockowym obrazie) działa jako wolny fallback, gdy SOLARIA śpi; zadania czekają w Redis (AOF włączone, restart brokera nie gubi kolejki).
Szczegóły NFS (export na PIHA, mount na SOLARIA, ryzyko indeksu Whoosh) —
services/paperless-worker/README.md.