--- okf: "0.1" type: service visibility: private status: active updated: 2026-07-09 links: - ../decisions/gokapi-storage-e2e-siec.md - ../runbooks/gokapi-cutover.md --- # Gokapi (publiczne udostępnianie plików) Lekki self-hosted "Firefox Send" alternative — link do jednego pliku, na zewnątrz, z limitem pobrań/czasu. **Osobny serwis od Nextclouda, celowo.** | | Nextcloud | Gokapi | |---|---|---| | Rola | twierdza — prywatna, mesh/`kapala.org` | publiczne dzielenie — `okit.pl` | | Dostęp | Tailscale/LAN only, zero public ingress | publiczny internet, przez npm@VPS | | Host | PIHA | **VPS** (Hetzner, publiczny) | | Użycie | sync telefon/desktop, KB source | "wyślij komuś link do pliku" | Host: **VPS** (Hetzner, `135.181.153.108`) — publiczny serwis na publicznym hoście, węzły domowe nietknięte. `owner_node: vps`. ## Stack | Kontener | Obraz | Rola | |---|---|---| | `gokapi` | `f0rc3/gokapi:v2.2.4` | cała aplikacja (Go binary + wbudowana baza SQLite), port 53842 | Wersja przypięta na `v2.2.4` (aktualny stable na 2026-07-09, zweryfikowane przez github.com/Forceu/Gokapi releases + tagi `f0rc3/gokapi` na Docker Hub). **TODO PRZY DEPLOYU**: potwierdzić, czy nie wyszła nowsza wersja, zanim `docker compose up`. ## Backup - `/opt/homelab/data/gokapi/data` — pliki użytkowników. **Ulotne z założenia** (linki wygasają), nie wymaga backupu. - `/opt/homelab/data/gokapi/config` — `config.json` + klucz szyfrowania E2E. **To backupować** — utrata = utrata dostępu do configu (hasło admina, ustawienia) i do zaszyfrowanych plików, jeśli klucz trzymany lokalnie. Sugerowana retencja: dołączyć do tej samej pętli nocnej co inne configi na VPS (mały rozmiar, plik+SQLite). ## Rejestracja w repo (zrobione w tym PR) - `hosts/vps/services.yaml` — wpis `gokapi`. - `inventory/topology.yaml` — `gokapi` w liście serwisów `vps`.