2026-08-04 15:00:33 +02:00
|
|
|
---
|
|
|
|
|
okf: "0.1"
|
|
|
|
|
type: phase
|
|
|
|
|
visibility: private
|
|
|
|
|
status: active
|
|
|
|
|
updated: 2026-07-02
|
|
|
|
|
links: []
|
|
|
|
|
---
|
|
|
|
|
|
2026-07-02 15:09:40 +02:00
|
|
|
# Modul 4 — Nextcloud (drive/WebDAV + OIDC)
|
|
|
|
|
|
|
|
|
|
> Drugi adapter dokumentow: zamiennik Google Drive, dowolne pliki + sync. Zrodlo
|
|
|
|
|
> dla ingestu (WebDAV). Zalezy od: 0 (odchudzic PIHA), 1 (SSO).
|
|
|
|
|
|
|
|
|
|
## Cel
|
|
|
|
|
Postawic Nextcloud jako self-hosted Drive — pliki + sync z telefonu/desktopu,
|
|
|
|
|
dostep LAN/Tailscale, login przez Forgejo-OIDC. Zrodlo dokumentow dla ingestu (modul 5).
|
|
|
|
|
|
|
|
|
|
## Wymogi
|
|
|
|
|
- `services/nextcloud/` — docker-compose.yml + service.yaml.
|
|
|
|
|
- Komponenty: nextcloud (PHP-fpm+apache/nginx), baza (postgres/mariadb), redis (cache).
|
|
|
|
|
- **OIDC** przez Forgejo (wzorzec z modulu 1). App user_oidc / social login.
|
|
|
|
|
- **Ingress LAN-only** przez npm@PIHA (NIE public). Subdomena np. cloud.kapala.org
|
|
|
|
|
-> Tailscale/LAN, DNS Only. WebDAV endpoint osiagalny dla ingestu (modul 5).
|
|
|
|
|
- **Archiwum = KOPIA** (z hybrydy kb-02): pliki w Nextcloud znikaja/zmieniaja sie,
|
|
|
|
|
wiec ingest robi SNAPSHOT do archiwum KB przy imporcie. Nextcloud NIE jest zrodlem
|
|
|
|
|
prawdy (w przeciwienstwie do Paperless=referencja).
|
|
|
|
|
|
|
|
|
|
## HOST — decyzja do rozstrzygniecia (otwarta w kb-02)
|
|
|
|
|
Nextcloud ciezszy niz Paperless-serwis (PHP+baza+storage sync). PIHA juz ciasno
|
|
|
|
|
(nawet po odchudzeniu). SKLONNOSC: **SOLARIA** — bo:
|
|
|
|
|
- drive nie musi byc always-on tak twardo jak indeks KB (pliki sync sie gdy wroci online;
|
|
|
|
|
KB-kopia i tak jest w archiwum na PIHA, wiec zapytania dzialaja bez Nextcloud)
|
|
|
|
|
- SOLARIA ma miejsce (315G) i RAM (62Gi) na storage+PHP
|
|
|
|
|
- ALE: sync z telefonu przerywany gdy SOLARIA spi (do akceptacji — sync sie dogoni)
|
|
|
|
|
CC ma zweryfikowac obciazenie i potwierdzic host (SOLARIA vs PIHA) faktami.
|
|
|
|
|
|
|
|
|
|
## Do zweryfikowania przez CC
|
|
|
|
|
- Realne zuzycie RAM/CPU Nextcloud + baza pod normalnym uzyciem.
|
|
|
|
|
- OIDC w Nextcloud: app `user_oidc` vs `sociallogin` — ktory, jak przeciw Forgejo.
|
|
|
|
|
- WebDAV endpoint dla ingestu (modul 5) — sciezka, auth (app-password? OIDC token?).
|
|
|
|
|
- Jesli host=SOLARIA: jak ingress LAN dziala gdy SOLARIA za npm@PIHA (proxy do
|
|
|
|
|
Tailscale IP SOLARII) — czy npm@PIHA moze proxowac do innego node.
|
|
|
|
|
- Storage: gdzie pliki (SOLARIA nvme?), jak backup (mniej krytyczny bo Nextcloud=kopia,
|
|
|
|
|
ale user data warto).
|
|
|
|
|
|
|
|
|
|
## Kryteria ukonczenia
|
|
|
|
|
- Nextcloud dziala, login przez Forgejo-OIDC, dostep LAN/Tailscale (nie public).
|
|
|
|
|
- Sync klient (telefon/desktop) dziala.
|
|
|
|
|
- WebDAV osiagalny dla ingestu (modul 5).
|
|
|
|
|
- Host potwierdzony faktami (SOLARIA vs PIHA).
|
|
|
|
|
- W GitOps: services/nextcloud/ + hosts/<node>/services.yaml + topology.
|