Syncloud: open source platform na Go řeší problém self-hostingu bez Dockeru a ručních konfigurací
Syncloud není jen další UI nad Dockerem. Je to plnohodnotná operační platforma pro self-hosting, postavená od základů v Go a zaměřená na spolehlivost, izolaci a provoz bez nutnosti ruční konfigurace. Eliminuje hlavní bolest domácích serverů: potřebu každý víkend upravovat nginx-konfigurace, obnovovat certifikáty Let’s Encrypt a řešit konflikty portů po aktualizacích. Místo toho nabízí jednotné rozhraní, SSO z krabice, automatickou routing a přes 40 aplikací připravených k instalaci jedním kliknutím.
Architektura bez kompromisů: proč snap místo Dockeru
Syncloud se vyhýbá Dockeru jako primárnímu kontejnerovému runtime – ne z ideologických důvodů, ale kvůli technickým limitacím. Snap balíčky poskytují striktní izolaci souborového systému, kontrolu práv přístupu prostřednictvím security profilů a atomární aktualizace bez downtime. Na rozdíl od Docker image obsahují snap balíčky v Syncloud:
- Předdefinované interfacery (network, home, removable-media) – bez ručního
--cap-addnebo--privileged - Automatickou registraci služeb do systemd při aktualizaci
- Vestavěný mechanismus rollback: pokud nová verze aplikace nespustí, systém se vrátí k předchozí za 2 sekundy
Back-end platformy je napsána v Go a tvoří ho tři klíčové komponenty:
- Platform Daemon – jádro spravující životní cyklus aplikací, DNS nastavení a certifikáty
- Web UI (Vue.js) – administrační panel s obchodem, síťovými nastaveními a monitoringem stavu
- Snapd integrační vrstva – meziprostředek převádějící žádosti o instalaci na snap příkazy s korektními parametry prostředí
Nginx zde není pouhý reverse proxy – je plně řízený: konfigurace se generuje dynamicky při každé instalaci/odstranění aplikace s ohledem na TLS režim (Let’s Encrypt nebo custom cert), SNI routing a bezpečnostní hlavičky (HSTS, CSP, X-Frame-Options). Žádné ruční úpravy /etc/nginx/sites-enabled/ – vše probíhá přes API.
Jak funguje autentizace: Authelia + OpenLDAP v produkci
Systém jednotné autentizace není volitelný doplněk, ale základ. Syncloud integruje Authelia jako meziproxy před všimi aplikacemi. Při prvním přihlášení uživatel projde centralizovaným login formulářem a Authelia ověří údaje v OpenLDAP backendu. Po úspěšné autentizaci je vydán JWT token, který transparentně putuje v hlavičce X-Forwarded-User do každé aplikace.
Důležité: LDAP server slouží nejen k autorizaci. Také spravuje:
- Uživatelské skupiny (např.
admin,media,dev) – s diferenciací přístupu k aplikacím - Atributy
mail,displayName,sshPublicKey– pro integraci s mail serverem a Git serverem - Heslové politiky (min délka, historie, expirace) – prostřednictvím slapd overlay
ppolicy
To umožňuje například nastavit, aby pouze členové skupiny media měli přístup k Jellyfin, zatímco dev k Gogs a MeshCentral. Přitom uživatel zadá heslo jednou – a dostane přístup ke všem povoleným službám bez opakovaného logování.
Praktická instalace: od SD karty až k pracovnímu Nextcloud
Proces nasazení je snížen na minimum. Níže je reálná postupnost akcí na Raspberry Pi 5 (64-bit):
- Stáhneme oficiální image
syncloud-os_24.04_arm64.img.xzz syncloud.org - Zapišeme pomocí
ddnebo Balena Etcher na microSD - Připojíme PC k síti a zapneme napájení
- Za 90 sekund otevřeme
http://syncloud.localv prohlížeči - Vytvoříme účet – což iniciuje generování Let’s Encrypt certifikátu přes ACME v2
- V sekci „App Store“ najdeme Nextcloud → klikneme na „Install"
- Za cca 80 sekund se objeví odkaz
https://nextcloud.syncloud.local, již s platným certifikátem a aktivním SSO
Přitom:
- Nginx automaticky přiřadil port 8080 pro Nextcloud službu (interní)
- Nastavil location blok s proxy a hlavičkami
X-Real-IP,X-Forwarded-Proto - Přidal uživatele z LDAP do Nextcloud databáze prostřednictvím SCIM podobného API
- Nastavil cron úkol pro pravidelnou obnovu certifikátu
Žádné docker-compose up -d, žádné certbot --nginx, žádné sudo systemctl restart nginx. Vše přes HTTP rozhraní.
Co je důležité
- Syncloud je OS podobná platforma, ne UI obal: nahrazuje systémový init, manažer balíčků a síťový stack
- Snap izolace zajišťuje bezpečnost a předvídatelnost aktualizací – bez rizika „pokazit celý systém“ při aktualizaci jedné aplikace
- Authelia + OpenLDAP realizují enterprise-grade SSO s podporou skupin, heslových politik a atributivního přístupu
- Podpora ARM64, amd64 i armhf znamená kompatibilitu s Raspberry Pi, mini-PC na Intel/AMD i starými ARM servery (např. Scaleway C2)
- Plně open source (GPL-3.0), bez cloudových závislostí: DNS, certifikáty i autentizace fungují lokálně
Srovnání s alternativami: kde Syncloud zaujímá své místo
| Kritérium | Syncloud | YunoHost | CasaOS |
|----------|----------|----------|--------|
| Runtime | snapd | chroot + shell skripty | Docker |
| SSO | vestavěný Authelia + LDAP | SSO přes YunoHost SSO | není (pouze basic auth) |
| HTTPS | Let’s Encrypt / custom cert, auto-nastavení v nginx | Let’s Encrypt, ruční zapnutí | Let’s Encrypt, vyžaduje ruční nastavení reverse proxy |
| Aktualizace | atomární, s rollback | přes apt + skripty, bez garance | přes Docker Hub, bez kontroly verzí |
| Kontrola | vysoký stupeň abstrakce, „platforma s názorem“ | flexibilní, ale vyžaduje znalost Debianu | nízký stupeň – pouze UI nad Dockerem |
Pro middle/senior vývojáře je Syncloud obzvláště cenná tím, že nezamaskuje složitost, ale ji strukturuje: celý kód je dostupný, všechna rozhraní jsou dokumentována a CI zahrnuje testy na reálném hardwaru (Raspberry Pi 4/5, x86 mini-PC). To není „černá skříň“, ale transparentní systém, který lze auditovat, forkovat a modifikovat – s zachováním kompatibility s app storem.
Měřitelnost a limity
Syncloud není pozicován jako řešení pro tisíce uživatelů. Jeho ideální rozsah je od 1 do ~50 aktivních účtů a až 15 současně pracujících aplikací. Testy ukazují, že na mini-PC s procesorem Intel N100 a 8 GB RAM stabilně fungují:
- Nextcloud (s Collabora Online a full-text search)
- Jellyfin (reálný 1080p transkódování)
- Home Assistant (s 200+ zařízeními)
- Gogs (s CI integrací)
- Bitwarden + Authelia + OpenLDAP
Spotřeba je 9–12 W v zatížení, bez ventilátoru. Pro těžší scénáře (např. Plex s hardware transkódováním nebo Matrix s 500+ uživateli) je třeba externí server nebo clustering – což Syncloud zatím nepodporuje. Ale pro většinu domácích a malých kancelářských případů použití je to optimální rovnováha mezi jednoduchostí a kontrolou.
— Editorial Team
Zatím žádné komentáře.