--- okf: "0.1" type: runbook visibility: private status: active updated: 2026-07-09 links: - ../services/paperless.md - ../decisions/paperless-split-ocr.md --- # Paperless — cutover checklist ## Cutover checklist (przy deployu — NIE teraz) 1. Moduł 0 (piha-slim) domknięty; `free -g` na PIHA potwierdza zapas. 2. Porty wolne na żywym hoście: `ss -tlnp | grep -E '8210|5434|6380'`. 3. `mkdir -p /opt/homelab/data/paperless/{data,media,consume,export}` na PIHA. 4. `.env` z `env.example` (sekrety + rejestracja OAuth2 w Forgejo). 5. DNS: rekord A `paper.kapala.org` w Cloudflare → `100.108.208.3` (Tailscale PIHA, DNS Only) — ten sam wzorzec co `ha.kapala.org` / `immich.kapala.org` (`docs/sessions/2026-06-30-kapala-cloudflare-wildcard-mesh.md`); wildcard `*.kapala.org` już pokrywa tę subdomenę, nowy cert niepotrzebny. Plus vhost w npm@PIHA (HTTPS → `192.168.31.5:8210`, Advanced puste). 6. `docker compose up -d` + `./healthcheck.sh` + testowy login OIDC. 7. Export NFS dla workera (patrz `services/paperless-worker/README.md`) — dopiero przy module 3. 8. Wpis w `hosts/piha/services.yaml` (dopiero przy deployu — wcześniej supervisor widziałby drift dla nieistniejącego serwisu).