Paketzentrum und Container
6 min · 10 Abschnitte
Das NAS führt Anwendungen aus — einen Filmserver mit Covern, eine private Cloud, den Werbeblocker für das ganze Haus —, jede in ihrem Container eingesperrt, ohne das System anzufassen. Das Paketzentrum installiert und aktualisiert sie mit einem Klick; die App Container zeigt die Maschinerie darunter, für den Fall, dass man hineinschauen muss.
| Was du willst | Geh zu |
|---|---|
| Deine erste Anwendung installieren | Installieren |
| Tausende Apps statt einer Handvoll | Quellen des Katalogs |
| Den Port oder die Ordner einer App ändern | Ports und Ordner |
| Eine App loswerden (und entscheiden, was mit ihren Daten passiert) | Deinstallieren |
| Sehen, warum eine App nicht startet | Container, Logs und Konsole |
| Den Platz zurückholen, den Docker hinterlässt | Platz schaffen |
Dafür braucht es ein angelegtes Volume: Die Anwendungen und ihre Daten leben auf dem Volume (<pool>/apps/<anwendung>/), nie auf der Systemfestplatte — eine App, die dick wird, darf dem NAS nicht den Platz zum Aktualisieren wegnehmen.
Installieren
Such die App im Katalog aus —über die Kategorien oder über die Suche— und drück auf „Installieren“. Das Herunterladen und das Starten laufen als Aufgabe mit Fortschritt; am Ende tragen die Apps mit Weboberfläche den Knopf „Öffnen“, der dich direkt auf ihren Bildschirm bringt. Jede Anwendung legt ihre Sachen in ihrem Datenordner auf dem Volume ab: Sie neu zu installieren oder zu aktualisieren fasst das Gespeicherte nicht an.
„Aktualisieren“ holt die neue Version des Images und erstellt den Container mit denselben Einstellungen neu. Die Daten werden nicht einmal angeschaut: Sie liegen in ihrem Ordner, außerhalb des Containers.
Quellen des Katalogs
Der Katalog bringt die Rezepte des Hauses mit und kann Kataloge der Community abgleichen — mit einem davon wird aus ein paar Dutzend rund 2000 Anwendungen mit Kategorien und Symbolen. Die umgewandelten Rezepte zeigen mit ihren Daten auf den Datenordner des NAS, genau wie die eigenen; die Regel „alles auf dem Volume“ gilt also, woher die App auch kommt. Nimmst du eine Quelle weg, verschwinden ihre Rezepte aus dem Katalog, nie die Apps, die du schon installiert hast.
Ports und Ordner
Jede installierte App hat ihren Knopf „Ports und Ordner“:
- Ports: Welcher Port des NAS zu welchem Port im Container führt. Wenn der, den das Rezept vorschlägt, mit etwas von dir kollidiert, wird er hier geändert, und die App wird mit dem neuen neu erstellt.
- Ordner: Welche Ordner des NAS die App von innen sieht. So gibst du einem Filmserver deinen Ordner Filme, oder sorgst dafür, dass eine Backup-App sieht, was sie sichern soll.
Für das, was der Bildschirm nicht abdeckt, gibt es die Bearbeitung für Fortgeschrittene: das ganze Rezept (docker compose) und seine Variablen, direkt änderbar. Mit Netz und doppeltem Boden: Beim Übernehmen werden die Container mit dem neuen Rezept neu erstellt, und kommen sie nicht hoch, wird die vorherige Konfiguration von allein wiederhergestellt — ein Tippfehler lässt dir die App nicht tot liegen.
Videobeschleunigung
Wenn das NAS eine eingebaute Grafikeinheit hat (Intel oder AMD), können Jellyfin und Plex sie zum Umwandeln von Video nutzen, ohne den Prozessor zu belasten: Das ist der Unterschied zwischen einen Film sehen und ein Ladesymbol sehen. Beim Installieren erscheint der Schalter „Videobeschleunigung“, und für eine schon installierte App steht er unter „Ports und Ordner“. Es ist das Einzige vom Gerät, was eine Anwendung bekommen kann: die Grafik; weder Festplatten noch andere Geräte.
Eine Nvidia-Karte
Wenn im NAS eine Nvidia-Karte steckt, taugt derselbe Schalter auch für sie, sobald drei Dinge erfüllt sind: dass der Treiber geladen ist (es gibt /dev/nvidia0, das nach dem Installieren und einem Neustart auftaucht, oder wenn du einmal nvidia-smi ausführst), dass das Container-Runtime von Nvidia installiert ist und dass dieses Runtime bei Docker angemeldet ist. Das ist eine einmalige Sache, von der Konsole des NAS aus:
sudo apt install nvidia-driver nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
Das Paket nvidia-driver liegt im Bereich non-free von Debian und nvidia-container-toolkit im Repository von Nvidia. Bis sie da sind, erscheint die Option nicht: Das Panel bietet sie nur an, wenn es weiß, dass sie funktionieren wird.
USB-Geräte
Home Assistant mit einem Zigbee- oder Z-Wave-Stick am USB muss den Adapter sehen. Beim Installieren, und unter „Ports und Ordner“, erscheinen die Adapter für die serielle Schnittstelle, die am NAS hängen, mit ihrem Namen; hak den an, den du willst, und die Anwendung findet ihn unter /dev/serial/by-id/…, einem Namen, der sich beim Umstecken nicht ändert. Nur serielle Schnittstellen: Eine USB-Festplatte oder ein anderes Gerät bleiben außerhalb der Reichweite der Anwendungen.
Grenzen für Arbeitsspeicher und CPU
Unter „Ports und Ordner“ jeder installierten Anwendung legst du fest, wie viel Arbeitsspeicher und wie viel CPU sie höchstens nutzen darf. Ohne Grenze frisst eine Anwendung, die durchdreht (ein Indexer für Fotos, eine schlecht eingestellte Datenbank), den Speicher des NAS und reißt das Panel und die anderen mit. Die Stufen, die angeboten werden, sind die, die in dein Gerät passen; „Ohne Limit“ nimmt sie weg. Die Änderung startet die Anwendung neu.
Deinstallieren
„Deinstallieren“ hält die App an und nimmt sie aus der Liste, und es sagt klar: Die Daten bleiben auf der Festplatte. Sie morgen neu zu installieren bringt sie mit allem Ihren zurück. Wenn du den Platz zurückhaben willst, macht die Option, auch die Daten zu löschen, das wirklich — und falls sich etwas nicht löschen lässt, wird es mit Namen und Grund gesagt, statt so zu tun, als wäre alles sauber.
Container, Logs und Konsole
Die App Container zeigt, was wirklich läuft: jeden Container mit seinem Zustand, seinem Speicher und seinem Prozessor.
- Logs: die Ausgabe des Containers, mit Suche — der erste Ort zum Nachschauen, wenn eine App nicht startet oder sich seltsam benimmt.
- Konsole: ein Terminal im Container, für den Blick, den kein Panel geben kann.
- Einzelne Container anhalten, starten und neu starten. Vorsicht beim Löschen des Containers einer Anwendung aus dem Paketzentrum: Das deinstalliert sie nicht —sie wird beim Aktualisieren neu erstellt—, es lässt sie nur angehalten. Um sie wirklich loszuwerden, nimm „Deinstallieren“ im Paketzentrum.
Platz schaffen
Docker lässt mit jeder Aktualisierung alte Images liegen, und die belegen Gigabytes, die niemand nutzt. Der Knopf zum Aufräumen holt sie zurück: Er löscht, worauf kein Container mehr zeigt — verwaiste Images, einzelne Schichten — und sagt, wie viel er freigegeben hat. Die Apps und ihre Daten werden nicht angefasst.
Wie es sich ins Ganze einfügt
- Die Daten der Apps sind ganz normale Ordner auf dem Volume: Sie kommen in die Sicherungen und in die Snapshots wie alles andere.
- Wird das Volume zerstört oder umgezogen, rückt das Panel Docker zurecht und sagt dir, welche Apps neu zu installieren sind: Das steht in Festplatten, Ersatz und Replikation.
- Zum Veröffentlichen eigener Rezepte im Katalog gibt es die Anleitung zur Verwaltung.