CasaOS versetzt selbst Anfänger in die Lage, Dienste auf Docker-Basis per Mausklick auf einem Raspberry Pi auszurollen.
Die Zahl der Home-Server nimmt stetig zu. Wer seine Dienste selbst hostet, profitiert gleich von mehreren Vorteilen. Neben dem Einsparen der monatlichen Kosten für abonnierte Dienste oder einen gemieteten V-Server bei einem Hoster spielt die zurückgewonnene Datenhoheit eine wichtige Rolle. Die Daten bleiben da, wo sie hingehören: im eigenen Netzwerk. Das erfordert freilich eine Konfiguration, die Sicherheit nicht vernachlässigt.
Passendes Expertenwissen vorausgesetzt, könnten Sie einen Home-Server von Grund aufbauen und darauf die benötigten Dienste mit Docker laufen lassen. Vorgefertigte Lösungen wie Proxmox oder Unraid bringen Sie jedoch deutlich einfacher ans Ziel – mit dem Haken, dass die beiden zumindest beim Aufsetzen trotzdem einiges an Wissen und Verständnis erfordern. Dass es auch schlanke Lösungen gibt, die vielen Anwendern völlig ausreichen, zeigt CasaOS. Auf der Webseite lässt sich das System in einer Demoversion vorab begutachten [1].
Kein Betriebssystem
Die in Shanghai ansässige Firma Icewhale Technology Co. entwickelt CasaOS für die hauseigenen ZimaBoards [2], um die im letzten Jahr ein gewisser Kult entstand. Der Name CasaOS ist etwas irreführend, suggeriert er doch, dass es sich um ein Betriebssystem handelt. Tatsächlich steckt dahinter jedoch eine grafische Oberfläche, die ein bereits installiertes Betriebssystem voraussetzt.
Während CasaOS stark Community-getrieben ist, arbeitet Icewhale im Hintergrund an ZimaOS, das auf den ZimaBoards und anderer x86_64-Hardware läuft, momentan aber nicht auf dem Raspberry Pi. Das noch in der Betaphase befindliche ZimaOS verspricht einige Verbesserungen wie leichteren Remote-Zugriff und automatische Backups. In der näheren Zukunft sollen RAID-Unterstützung sowie eine einheitliche Verwaltung für Cloud und lokalen Speicher hinzukommen [3].
Raspberry Pi 5
Da uns Icewhale kein ZimaBoard zur Verfügung gestellt hat, installierten wir CasaOS auf einem Raspberry Pi 5. Mit einer leichtgewichtigen Distribution im Hintergrund sollte selbst ein RasPi 4 genügend Ressourcen bereitstellen, um der Anwendung gerecht zu werden. Daneben lässt sich das System auf beliebiger Hardware der Architekturen x86_64, ARM64 und ARMv7 installieren.
Da wir ein Betriebssystem benötigen, auf dem CasaOS läuft, haben wir das aktuelle Raspberry Pi OS auf einer 64 GByte fassenden SD-Karte installiert. Mit einem entsprechenden Adapter [4] unterstützt der RasPi 5 zudem alternativ das Booten von einer NVMe-SSD. Unter Windows 10 läuft CasaOS im Windows-Subsystem für Linux (WSL2 [5]).
Zum Installieren kam das offizielle Tool Raspberry Pi Imager zum Einsatz, das die meisten Distributionen in den Repositories mitbringen und aktuell in Version 1.8.5 vorliegt. Der Vorgang ist geführt und gut dokumentiert, sodass wir hier nicht weiter darauf eingehen. Übrigens lädt Imager nicht nur das offizielle Raspberry Pi OS herunter und installiert es, sondern bei Bedarf auch Distributionen wie Ubuntu und einige andere. Soll nur CasaOS darauf laufen, genügt die abgespeckte Variante von Raspberry Pi OS oder Ubuntu Server ohne Desktop-Umgebung. Dessen Integration stößt ein einziger Befehl im Terminal an (Abbildung 1).

Abbildung 1: Der Raspberry Pi Imager erleichtert die Auswahl des Betriebssystems sowie dessen Vorkonfiguration und Installation mit sinnvollen Vorgaben.
Am besten per SSH
Nachdem die gewünschte Distribution auf der SD-Karte vorliegt, verbinden Sie den RasPi mit Display, Tastatur und Maus oder greifen per SSH darauf zu [6]. Im ersten Schritt aktualisieren Sie wie gewohnt das System (Listing 1, erste Zeile). Anschließend öffnen Sie ein Terminal und installieren CasaOS (zweite Zeile), das derzeit in Version 4.4.3 vorliegt. Nach rund einer Minute sollte der Vorgang abgeschlossen sein, und Sie erhalten je eine IP-Adresse für Ethernet und WLAN (Abbildung 2).
Listing 1
CasaOS installieren
$ sudo apt update && sudo apt upgrade $ sudo curl -fsSL https://get.casaos.io | sudo bash

Abbildung 2: Das Aufsetzen von CasaOS dauert nur wenige Augenblicke. Sie erhalten dabei eine URL, über die Sie zur Bedienoberfläche der Anwendung gelangen.
Geben Sie den entsprechenden Link in einen Browser ein, begrüßt Sie CasaOS mit der Aufforderung, ein Konto anzulegen. Ist das erledigt, finden Sie sich in einem übersichtlichen Dashboard wieder, das Informationen zur Nutzung von CPU, RAM, Speicher und Netzwerk sowie Links zum App Store und zu einem Dateimanager enthält. Zudem bietet die Software über Widgets die Installation von Syncthing zum Synchronisieren Ihrer Daten sowie einen Einstieg in ein smartes Home an. Welche Widgets Sie im Dashboard sehen möchten, legen Sie links unten über Widget-Einstellungen fest (Abbildung 3).

Abbildung 3: Im Browser begrüßt Sie CasaOS mit einer übersichtlichen Oberfläche. Sie zeigt links einige Infos zum Rechner und mittig App Store und Dateimanager.
Verfügt die verwendete SD-Karte nicht über genügend Platz für die geplanten Aufgaben, stecken Sie per USB eine externe Festplatte an den RasPi und binden sie in CasaOS als SMB-Share ein. Nach dem Anschließen und gegebenenfalls nötigen Formatieren der zusätzlichen Platte mit dem Ext4-Dateisystem öffnen Sie über das rechte der drei Symbole am oberen Rand eine Shell. Mit dem Befehl sudo fdisk -l finden Sie daraufhin den Bezeichner der externen Platte heraus. Bei uns war das /dev/sda1, obwohl es sich um ein NVMe-Laufwerk handelt.
Storage erweitern
Zunächst gilt es, eine externe Festplatte mit Ext4 als Dateisystem einzubinden. Notieren Sie den Bezeichner des externen Laufwerks (aus der Ausgabe des ersten Kommandos in Listing 2) und die UUID (aus der Ausgabe des zweiten Kommandos). Dann legen Sie für das Laufwerk einen Einhängepunkt mit einem sinnvollen Namen an (Zeile 3) und übertragen Ihrem User-Konto die passenden Rechte (Zeile 4) zum Zugriff. Zu guter Letzt öffnen Sie mit einem Texteditor die Dateisystemtabelle (Zeile 5) und tragen in einer neuen Zeile die Daten für das Laufwerk ein (Zeile 7), wozu Sie die vorher notierte UUID verwenden. Abschließend speichern Sie die Datei und starten den RasPi neu (Zeile 8). Anschließend sollte das Kommando df -h die Platte korrekt mit dem neu angelegten Einhängepunkt anzeigen.
Listing 2
Externes Laufwerk bereitstellen
$ sudo fdisk -l $ sudo blkid /dev/sda1 $ cd /mnt && sudo mkdir LwName $ sudo chown -R pi:pi /mnt/LwName $ sudo nano /etc/fstab [...] UUID=UUID /mnt/LwName ext4 defaults 0 0 $ sudo reboot -f
Nun erstellen Sie ein Samba-Share, das es Ihnen ermöglicht, von Ihrem Host-Rechner aus auf CasaOS zuzugreifen. Der Befehl aus der ersten Zeile von Listing 3 stellt sicher, dass der freie SMB-Server installiert und aktuell ist. Mithilfe des Kommandos aus der zweiten Zeile öffnen Sie die Samba-Konfiguration zum Editieren. Dort scrollen Sie ganz zum Ende und fügen die Angaben für das neue Laufwerk ein (Zeile 3 bis 8). Gibt es abgesehen von Ihnen keine anderen Nutzer, können Sie das Kommentarzeichen vor Public = yes entfernen und dann ohne Anmeldung auf die Daten zugreifen. Schließlich startet der Befehl aus der letzten Zeile Samba neu. Wenn alles geklappt hat, erscheint das neue Laufwerk in der Speicherverwaltung (Abbildung 4), und Sie können das externe Laufwerk im Dateimanager auf dem Host-OS nutzen.

Abbildung 4: Die Speicherverwaltung zeigt das neue Laufwerk und bietet an, es virtuell mit dem internen Laufwerk zusammenzuführen.
Listing 3
Samba-Share erstellen
$ sudo apt install samba samba-common-bin $ sudo nano /etc/samba/smb.conf [...] [LwName] path = /mnt/LwName read only = no # Public = yes # keine Anmeldung writable = yes $ sudo systemctl restart smb
Nun lassen sich Daten zwischen Ihrem Host-OS und CasaOS verschieben. Der mit Files bezeichnete Dateimanager sieht dafür den Ordner DATA vor, den Sie einfach per Drag & Drop befüllen. Den Austausch mit dem externen Laufwerk haben wir über SMB eingerichtet. Im Dateimanager von CasaOS sehen Sie das externe Laufwerk links unter Standort. Dort binden Sie durch einen Klick auf das Pluszeichen außerdem Dienste wie Google Drive, OneDrive oder Dropbox an. Unten links finden Sie das Icon der Filesharing-App Filesdrop sowie ein Symbol zur Freigabe von Ordnern.
Dienste ausrollen
Um im nächsten Schritt Dienste in CasaOS auszurollen, besuchen Sie den App Store (Abbildung 5), der derzeit knapp 90 Anwendungen zur Installation in Docker-Containern per Mausklick anbietet. Zunächst installierten wir Nextcloud, was auf dem Raspberry Pi 5 rund 90 Sekunden dauerte. Ein Klick auf das neue Icon im Dashboard startet die Anwendung, wo Sie die Installation in wenigen Minuten zu Ende führen. Dabei wird Nextcloud mit SQLite als Datenbank installiert.
Soll Nextcloud größere Aufgaben erledigen, empfehlen sich MariaDB oder MySQL als Datenbank in einem eigenen Container. Dann ist es sinnvoll, zunächst Portainer in CasaOS bereitzustellen und damit Nextcloud samt gewünschter Datenbank mit Docker Compose zu installieren. Eine entsprechende Beschreibung würde jedoch den Umfang dieses Artikels sprengen.
Ebenso schnell installieren Sie weitere Apps wie die mächtige Fotoverwaltung Photoprism, den Mediaserver Jellyfin, den Werbeblocker Pi-hole oder den KI-Bot ChatGPT Next sowie viele andere Dienste. Wir haben zehn Anwendungen getestet, die sich alle nach der Installation sofort verwenden ließen. Zwei Mal startete eine App erst im zweiten Anlauf, was aber nur den ersten Start betraf und danach nicht mehr auftrat. Warten Sie am besten ein wenig, bis nach einer Installation die CPU-Anzeige wieder gesunken ist: Dann reagiert der Start-Button sofort.

Abbildung 5: Der App Store von CasaOS bietet standardmäßig 88 Apps an, weitere lassen sich durch Hinzufügen externer Repositories einbinden.
App Store erweitern
Der App Store lässt sich um weitere Repositories erweitern. Die Option liegt etwas versteckt hinter Hinzufügen rechts im App-Store-Fenster. Dort fügen Sie entweder die Adresse eines Docker-App-Stores ein oder klicken auf das kleine Fragezeichen. Es öffnet sich eine Webseite, die auf weitere Repositories verweist, darunter eines mit mehr als 100 von der Linuxserver.io-Community gepflegten Docker-Images. Kopieren Sie dessen URL, tragen Sie sie in das Feld mit dem Fragezeichen ein und klicken Sie auf Hinzufügen. Das erhöht die Anzahl der verfügbaren Anwendungen auf 261.
Anwendungen rollen Sie jedoch nicht allein über den App Store aus. Über das Pluszeichen oben rechts installieren Sie benutzerdefinierte Apps. Die dazugehörige Maske (Abbildung 6) befüllen Sie mit den notwendigen Informationen, wie dem Namen des zu verwendenden Docker-Images und der IP-Adresse samt Ports für Host und Container. Hierzu braucht es etwas mehr Grundwissen über die verwendeten Begrifflichkeiten, das sich aber locker an einem Nachmittag erwerben lässt. Wenn Sie bei einer bereits installierten Anwendung im Dashboard auf die drei Punkte rechts oben klicken und in die Einstellungen wechseln, bekommen Sie eine Vorstellung von den benötigten Informationen.

Abbildung 6: CasaOS bietet benutzerdefinierte Optionen zum Ausrollen von Apps an. Das verlangt allerdings etwas Hintergrundwissen über Docker.
Docker Compose
Eine weitere Möglichkeit zum Ausrollen von Containern besteht darin, eine vordefinierte Docker-Compose-Datei im YAML-Format zu verwenden. Im Internet finden Sie zahlreiche solcher Dateien für diverse Docker-Images. Dazu betätigen Sie erneut das Pluszeichen und wählen Eine benutzerdefinierte App installieren. Im folgenden Dialog gelangen Sie über den nach rechts zeigenden Pfeil zur Auswahl von Docker Compose. Theoretisch können Sie damit Compose-Dateien nutzen, die mehrere Container in einem Rutsch ausrollen und verbinden, beispielsweise das schon erwähnte Nextcloud mit MariaDB oder MySQL.
Allerdings ist die Möglichkeit, mehrere Container gleichzeitig auszurollen, in CasaOS noch nicht implementiert. Kopieren Sie eine Compose-Datei mit mehreren Containern in das Fenster, baut die Anwendung derzeit nur den ersten Container. Sobald die Software die Funktion unterstützt, können Sie auf den oben erwähnten Umweg über Portainer verzichten [7].
Fazit und Ausblick
Egal, ob Sie einen ersten Ausflug in die Home-Server-Gefilde unternehmen möchten oder schlicht nicht tiefer in die Materie rund um Linux und Docker oder Docker Compose einsteigen möchten: CasaOS leistet dabei gute Dienste, stellt Anwendungen schnell bereit und lässt sich einfach handhaben. Das System und die Dokumentation [8] stecken zwar noch in der Entwicklung, lassen sich aber schon gut nutzen. Weitere Hilfestellung gibt es auf einem Discord-Server [9], auf dem unter anderem ein Forum eingerichtet ist.
Im Test vermissten wir eine integrierte Backup-Lösung, was jedoch nicht allein für CasaOS gilt. Ähnlich ausgerichtete Projekte setzen diesen wichtigen Aspekt ebenfalls nicht intuitiv genug um. Zwar lässt sich beispielsweise Duplicati aus dem App Store schnell installieren, aber das Einrichten einer Sicherung der relevanten Daten aus den Containern dürfte die meisten Einsteiger überfordern.
Alles in allem bietet CasaOS eindeutig die schnellste und einfachste Möglichkeit, einen Home-Server in Betrieb zu nehmen und in die Materie einzusteigen. Fortgeschrittene Selbst-Hoster vermissen vermutlich tiefere Eingriffsmöglichkeiten, wie sie das wesentlich komplexere Unraid [10] bietet. (csi)
Infos
-
CasaOS: https://casaos.io
-
ZimaBoard: https://www.zimaboard.com
-
M.2-Adapter für den RasPi 5: Bernhard Bablok, “Aufgeräumt”, RPG 05/2024, S. 14, https://www.raspi-geek.de/49942
-
WSL2: https://wiki.casaos.io/en/guides/running-casaos-on-windows-with-wsl2
-
Headless-Betrieb: Christoph Langner, “Kopflos”, RPG 10/2017, S. 20, https://www.raspi-geek.de/39333
-
Docker Compose: https://www.ionos.de/digitalguide/server/konfiguration/docker-compose-tutorial/
-
CasaOS-Dokumentation: https://wiki.casaos.io/en/home
-
Discord: https://discord.gg/swjQy358
-
Unraid (Teil 1): Ferdinand Thommes, “Speicher modern verwalten”, LU 02/2024, S. 16, https://www.linux-community.de/49898





