homelab-codex-ws/docs/kb/modules/04-nextcloud.md

2.4 KiB

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//services.yaml + topology.