Dit is het zelfgehoste Dropbox-alternatief waar ik op heb gewacht
Dropbox is al jarenlang een eersteklas cloudopslagdienst. Het is sneller, gebruikt de maximaal beschikbare bandbreedte, laat je video's streamen zonder ze eerst te hoeven downloaden, en is over het algemeen een betrouwbare oplossing. Na verloop van tijd begon het echter duur aan te voelen, en de gratis versie was nagenoeg niet bestaand met zijn gratis limiet van 2 GB. Toen kwam er langzaam het besef dat mijn bestanden op de server van iemand anders stonden. Dus besloot ik zelf te hosten.
Aanvankelijk probeerde ik Nextcloud gecombineerd met Google Drive als een hybride cloudoplossing, en hoewel het werkte, voelde het altijd aan als een zware groupware-suite die deed alsof het een synchronisatietool was. Op zoek naar een lichtere oplossing probeerde ik Seafile, wat bleek een uitstekend alternatief voor Dropbox te zijn met een solide synchronisatie die veel zelf-gehoste oplossingen misten.
Seafile is licht op middelen
Een gericht hulpmiddel in plaats van een volledige groupwaresuite
Het eerste dat me opviel na het opzetten van Seafile was hoeveel het van een oude laptop vroeg, vooral in vergelijking met Nextcloud, dat in feite een Zwitsers zakmes is. Het bevat agenda's, contactpersonen, chat, een kantoorsuite en een enorme catalogus met apps, allemaal draaiend op dezelfde PHP-stack. Zeker veelzijdig, maar het laat de server ook traag en zwaar aanvoelen, vooral op bescheiden hardware.
Seafile heeft daarentegen een lichtere footprint. Het richt zich op bestandssynchronisatie en -deling, en laat alles andere over aan andere tools. Er is geen app store bovenop gebouwd, of extra achtergrondtaken voor agenda's of chat, en de webinterface toont je bibliotheken en bestanden in plaats van een muur van app-pictogrammen.
In de praktijk vertaalt dat zich naar lager RAM- en CPU-gebruik in rust op dezelfde machine, minder bewegende onderdelen om bij te werken, en een merkbaar snellere webinterface. Als je ooit een Nextcloud-tabblad hebt geopend en gezien hoe het een paar seconden nadacht voordat je bestanden werden weergegeven, zal Seafile als een totaal andere categorie software aanvoelen.
Blokniveau-synchronisatie werkt gewoon
Alleen de gewijzigde delen van een bestand worden over de verbinding verzonden
Synchronisatie-engines zijn waar Seafile uitblinkt. De meeste zelfgehoste tools sturen hele bestanden wanneer er iets in verandert. Seafile gebruikt block-level synchronisatie, waarbij elk bestand in kleine blokken wordt verdeeld en alleen de blokken die daadwerkelijk zijn veranderd worden overgedragen.
Dit is het meest duidelijk bij het werken met grote bestanden. Bijvoorbeeld, bij het bewerken van een videoproject, het aanpassen van een virtuele machine afbeelding, of het opslaan van wijzigingen in een groot archief, hoeft dit geen volledige her-upload te forceren. Seafile maakt een hash van het bestand, bepaalt welke blokken verschillend zijn, en verstuurt alleen die.
De desktopclient gedraagt zich als een normale twee-wegs synchronisatiemap, hetzelfde model dat Dropbox gebruikt. Je kiest een map, markeert deze als een synchronisatiebibliotheek, en vanaf dat moment wordt elke wijziging automatisch gedetecteerd en doorgevoerd. Er is ook een drive-client, die je bibliotheken als een virtuele schijf koppelt en bestanden alleen downloadt wanneer je ze opent, vergelijkbaar met Dropbox Smart Sync of OneDrive's Files On-Demand.
Bibliotheken verslaan mappen
Elk project is een eigen versleutelde, versioneerde eenheid
Bibliotheken zijn de functie die de meeste mensen niet waarderen totdat ze ze gebruiken. In Dropbox leeft alles binnen één gigantische mapstructuur, en machtigingen raken snel in de war. In Seafile is elk topniveau-container een bibliotheek, en elke bibliotheek heeft zijn eigen synchronisatieregels, deelinstellingen, versiegeschiedenis en optionele versleuteling.
Dit klinkt misschien niet als een belangrijke deafferenterende factor, maar het beïnvloedt wel hoe je bestanden organiseert. Je kunt een aparte bibliotheek bijhouden voor werk van klanten, een andere voor persoonlijke documenten en weer een andere voor media-assets. Elk heeft zijn eigen toegangscontroles, zijn eigen prullenbak en zijn eigen versiegeschiedenis die je kunt terugdraaien zonder iets anders aan te raken.
Met Seafile is encryptie ook een beslissing per bibliotheek. Voor gevoelige documenten kun je client-side encryptie inschakelen en een wachtwoordzin instellen die de server zelf nooit te zien krijgt. Voor medialiefhebbers waar server-side zoeken belangrijk is, is het logischer om encryptie uit te laten. Het punt is dat je de keuze één keer per bibliotheek maakt in plaats van te worstelen met mapniveau-vlaggen.
Bibliotheken ondersteunen ook wiki's en gedeelde werkruimten. Het maken van een wiki in Seafile is gewoon het opzetten van een andere bibliotheek met een ander overzicht, wat het mentale model eenvoudig houdt.
Het is niet allemaal soepel — de opstartbelasting
Je ruilt een abonnement in voor een uur configuratie
Dit is waar Dropbox zijn geld mee verdient. Met Dropbox installeer je een app, log je in, en je bent klaar. Met Seafile ben je de beheerder, de netwerkengineer en het ondersteuningsteam in één. Het goede nieuws is dat de officiële Docker-setup van Seafile kort genoeg is om het tijdens een kopje koffie af te ronden.
De schoonste manier om het op Windows uit te voeren is de Community Edition in Docker, met alle gegevens op een aparte schijf zodat het niet concurreert met de systeempartitie.
Begin met het installeren van Docker Desktop op Windows 10 of 11. Open PowerShell als Administrator en voer wsl --install --no-distribution uit, gevolgd door winget install -e --id Docker.DockerDesktop. Herstart, start Docker Desktop en wacht tot het walvispictogram in het systeemvak aangeeft dat "Docker Desktop draait."
Vervolgens, vind het LAN-IP van je pc met ipconfig en noteer het. Dit is het adres dat je overal zult gebruiken, zowel in het configuratiebestand als vanuit de clients.
Maak nu een map voor de installatie, bijvoorbeeld E:\seafile. Sla daarin het officiële voorbeeld docker-compose.yml-bestand van Seafile op uit de Seafile 11 Docker-handleiding. Open het in een teksteditor en pas drie dingen aan: stel een sterk MYSQL_ROOT_PASSWORD en DB_ROOT_PASSWD in (ze moeten overeenkomen), wijs de gegevensvolumes toe aan mappen op E:\ in plaats van /opt, en stel SEAFILE_SERVER_HOSTNAME in op je LAN-IP. Dat is alles. Geen JWT-sleutel, geen apart .env-bestand.
Met het compose-bestand klaar, open PowerShell, navigeer naar E:\seafile, en voer uit:
docker compose up -dDit is het commando dat Seafile installeert. Docker leest docker-compose.yml, haalt de MariaDB- en Seafile-images van Docker Hub en start ze als containers op de achtergrond. De Seafile-container bootst zichzelf vervolgens op de eerste uitvoering op en maakt zijn databaseschema aan. Het hele proces duurt twee tot vier minuten. Je kunt de voortgang volgen met docker compose logs -f seafile, en het sein dat alles klaar is verschijnt wanneer de regel "Seahub is started" verschijnt.
Open nu http://YOUR_PC_IP in een willekeurige browser. Seafile toont zijn eigen webinterface bij de eerste opstart. Het standaard admin e-mailadres is me@example.com met het wachtwoord asecret. Maar je zou dat meteen moeten wijzigen vanuit de webinterface. Maak daarna je eerste bibliotheek aan om te bevestigen dat alles werkt.
Om vanaf je telefoon verbinding te maken met de server via hetzelfde Wi-Fi-netwerk, voeg een Windows Firewall-regel toe voor TCP-poort 80 op het Privé-profiel, via de GUI of met New-NetFirewallRule in een verhoogde PowerShell. Installeer daarna de Seafile Sync Client of de Seafile Drive Client op Windows van seafile.com, en de Seafile-app op Android of iOS. In elke client is het serveradres http://YOUR_PC_IP, met het admin-account.
Zelf hosten betekent ook dat je eigenaar bent van je back-ups. Een wekelijkse taak die de Docker-stack stopt en de gegevensmappen naar een externe schijf kopieert, dekt de basis, en het combineren van Seafile met een gratis platformonafhankelijke tool zoals Duplicati laat je versleutelde kopieën naar cloudopslag sturen als een tweede laag. Dropbox regelt dit allemaal voor je. Met Seafile ligt het aan jou.
Seafile is op dit moment het dichtstbijzijnde dat je aan een zelfgehoste Dropbox kunt komen
Seafile probeert niet Nextcloud te zijn, en dat is precies het punt. Als je kalenders, contacten, een office-suite en een volledig persoonlijk cloud-OS wilt, heb je iets zwaarders nodig, of je kunt Seafile naast aparte tools voor die taken draaien. Voor puur peer-to-peer synchronisatie zonder centrale server is Syncthing beter geschikt om bestanden tussen apparaten te laten bewegen.
Maar voor een zelfgehost alternatief voor Dropbox, snelle blokniveau-synchronisatie, volwassen clients, een slanke web-UI en bibliotheken die respecteren hoe je je werk organiseert, is Seafile het dichtstbijzijnde dat er is. De installatiekosten zijn reëel, en je bent nu je eigen IT-afdeling. Een gratis weekend en een oude laptop gaven me de synchronisatie-ervaring waarvoor ik Dropbox betaalde, en ik ga niet meer terug.








