Wenn es um selbstgehostete Cloud-Lösungen geht, fällt meist sofort ein Name: Nextcloud. Doch für viele IT-Admins und KMUs entpuppt sich Nextcloud schnell als behäbiges Monster. Es bringt Kalender, Office-Suiten und hunderte Plugins mit (Bloatware) und basiert auf PHP, was bei großen Dateimengen oft zu einem Flaschenhals beim Sync führt.
Die Lösung heißt Seafile. Der Core von Seafile ist in C geschrieben. Statt Dateien einzeln über das langsame WebDAV-Protokoll zu schieben, zerlegt Seafile Dateien in kleine Blöcke (Block-Level-Sync), dedupliziert sie und überträgt nur die Änderungen. Das Ergebnis? Ein pfeilschneller, extrem stabiler Dateisync, der sich anfühlt wie ein lokales Laufwerk auf deinem CachyOS, Mac oder Windows-PC. In diesem Guide setzen wir Seafile komplett sauber auf.
1. Vorbereitung: Debian 13 VM in Proxmox (PVE) erstellen
Wir starten mit einem sauberen Fundament. Lade dir zuerst das aktuelle Debian 13 (Trixie) Netinst-ISO direkt auf deinen Proxmox-Node herunter:
cd /var/lib/vz/template/iso
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-13.0.0-amd64-netinst.iso
Erstelle nun eine neue Virtuelle Maschine in Proxmox mit folgenden Systemanforderungen für ein flüssiges Seafile-Erlebnis:
- CPU: 2 vCores (Typ: host)
- RAM: 2 bis 4 GB (Seafile ist sehr ressourcenschonend, Memcached freut sich aber über etwas RAM)
- Disk: 32 GB SSD (VirtIO Block) für das System. (Tipp: Hänge später eine separate virtuelle Festplatte oder einen ZFS-Dataset nur für die Seafile-Daten an).
- Netzwerk: VirtIO
Führe die Debian-Installation durch. Wähle bei der Softwareauswahl nur den "SSH server" und die "Standard system utilities" an. Wir brauchen keine grafische Oberfläche (GUI).
2. Docker & System-Abhängigkeiten installieren
Logge dich per SSH in deine neue Debian 13 VM ein. Wir bringen das System auf den neuesten Stand und installieren Docker sowie Docker Compose:
apt update && apt upgrade -y
apt install curl git ufw -y
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
apt install docker-compose-plugin -y
3. Seafile per Docker Compose einrichten
Wir erstellen ein sauberes Verzeichnis für unsere Cloud-Infrastruktur und legen die Konfigurationsdatei an:
mkdir -p /opt/seafile && cd /opt/seafile
nano docker-compose.yml
Füge folgenden Stack ein. Dieser beinhaltet die Seafile-Applikation, eine MariaDB-Datenbank und Memcached für extrem schnelle Ladezeiten:
version: '3.8'
services:
db:
image: mariadb:10.11
container_name: seafile-mysql
environment:
- MYSQL_ROOT_PASSWORD=EinSehrStarkesRootPasswort!
- MYSQL_LOG_CONSOLE=true
- MARIADB_AUTO_UPGRADE=1
volumes:
- ./opt/seafile-mysql/db:/var/lib/mysql
networks:
- seafile-net
restart: unless-stopped
memcached:
image: memcached:1.6
container_name: seafile-memcached
entrypoint: memcached -m 256
networks:
- seafile-net
restart: unless-stopped
seafile:
image: seafileltd/seafile-mc:latest
container_name: seafile
ports:
- "8080:80"
volumes:
- ./opt/seafile-data:/shared
environment:
- DB_HOST=db
- DB_ROOT_PASSWD=EinSehrStarkesRootPasswort!
- TIME_ZONE=Europe/Berlin
- SEAFILE_ADMIN_EMAIL=admin@deine-domain.de
- SEAFILE_ADMIN_PASSWORD=SicheresAdminPasswort2026!
- SEAFILE_SERVER_LETSENCRYPT=false
depends_on:
- db
- memcached
networks:
- seafile-net
restart: unless-stopped
networks:
seafile-net:
name: seafile-net
Hinweis: Passe unbedingt die Passwörter und die Admin-E-Mail an! Speichere die Datei (CTRL+O, Enter, CTRL+X).
Starte den Stack mit:
docker compose up -d
Seafile benötigt beim allerersten Start ein bis zwei Minuten, um die Datenbankstrukturen anzulegen. Danach ist das Webinterface unter http://IP_DEINER_VM:8080 erreichbar.
4. Absicherung (Security Best Practices)
Einen Cloud-Speicher ungeschützt ins Netz zu hängen, ist grob fahrlässig. Folgende Schritte sind Pflicht:
1. Reverse Proxy & SSL (HTTPS):
Öffne den Port 8080 nicht direkt in deinem Router. Nutze einen Reverse Proxy (wie Nginx Proxy Manager oder Traefik), der auf einer anderen VM oder einem LXC läuft. Dieser leitet den Traffic über eine verschlüsselte HTTPS-Verbindung mit einem gültigen Let's Encrypt Zertifikat an deine Seafile-VM weiter.
2. Firewall (UFW) aktivieren:
Wir härten das Debian-System, sodass es nur SSH- und HTTP-Traffic aus dem lokalen Netz bzw. vom Proxy akzeptiert:
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow 8080/tcp
ufw enable
3. Service-URL anpassen:
Logge dich in das Seafile Webinterface ein, gehe oben rechts auf "Systemadministration" -> "Einstellungen". Ändere dort zwingend die SERVICE_URL auf https://cloud.deine-domain.de und die FILE_SERVER_ROOT auf https://cloud.deine-domain.de/seafhttp. Fehlt das "s" bei https, schlägt der Datei-Upload später fehl!
Fazit & Nächste Schritte
Du hast nun eine Enterprise-Grade Cloud-Infrastruktur aufgesetzt. Im nächsten Schritt kannst du dir die SeaDrive-Clients für deine Endgeräte (Windows, macOS, Linux) herunterladen. SeaDrive mountet deine Cloud als virtuelles Laufwerk – so hast du Zugriff auf Terabytes von Daten, ohne dass sie wertvollen Speicherplatz auf deiner lokalen Festplatte belegen. Viel Spaß mit der neuen Performance!
💬 Feedback & Diskussion 0
Kommentar hinterlassen
Noch keine Kommentare zu diesem Guide vorhanden. Sei der Erste!