Zum Inhalt springen
LGM-OS
Dokumentation

Apps mit einem Klick installieren und in die Maschinerie darunter schauen.

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 willstGeh zu
Deine erste Anwendung installierenInstallieren
Tausende Apps statt einer HandvollQuellen des Katalogs
Den Port oder die Ordner einer App ändernPorts und Ordner
Eine App loswerden (und entscheiden, was mit ihren Daten passiert)Deinstallieren
Sehen, warum eine App nicht startetContainer, Logs und Konsole
Den Platz zurückholen, den Docker hinterlässtPlatz 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