Categories: Codierung

by Thomas Leek

Share

by Thomas Leek

Was ist eine Distrobox?

Distrobox ist ein Wrapper um podman, docker oder lilipod zur Verwaltung von Linux-Containern. Sie ermöglicht eine enge Integration der Container in das Hostsystem und erlaubt die gemeinsame Nutzung des HOME-Verzeichnisses des Benutzers, externer Speicher- und USB-Geräte sowie von Audio- und Grafikanwendungen.

Es ist eine großartige Möglichkeit, containerisierte Anwendungen als native Anwendungen zu integrieren, unabhängig von der Linux-Distribution, auf der die containerisierte Anwendung ausgeführt wird. Dies erleichtert das Ausführen und Testen von Anwendungen auf verschiedenen Distributionen, was für diejenigen, die Pakete für verschiedene Distributionen erstellen oder sogar eine Testumgebung mit der gleichen Distribution wie der des Hosts einrichten, äußerst hilfreich ist.

Sie ermöglicht es uns, Software, die für die Host-Distribution nicht verfügbar ist, oder sogar eine andere Version von Software, die bereits auf dem Host-Rechner installiert ist, nativ auszuführen.

Container-Manager

Da Distrobox Container erstellen und starten muss, verwendet es einen der drei Container-Manager, nämlich Podman, Docker und Lilipod.

Lilipod ist ein sehr einfacher Container- und Image-Manager von den Entwicklern von Distrobox. Er wird als Fallback verwendet, falls kein Container-Manager gefunden wird oder es nicht möglich ist, einen zu installieren. Es ist bereits in den Distrobox-Binärdateien enthalten.

Bei der Auswahl des Container-Managers wird empfohlen, Podman anstelle von Docker zu verwenden, da Podman standardmäßig Container ohne Root-Rechte ausführt, was vom Standpunkt der Sicherheit aus gesehen die bessere Option ist.

Erste Schritte mit Distrobox

Einrichtung

Vor der Installation von Distrobox müssen wir entweder Podman oder Docker haben. Da Podman der empfohlene Container-Manager ist, werden wir ihn wählen.

Da Distrobox nur im apt-Repository von Ubunutu 22.10 und später verfügbar ist, müssen Sie das PPA-Repository hinzufügen, wenn Sie die letzte Ubuntu LTS-Version 22.04 und früher oder eine darauf basierende Distribution verwenden. Diese Schritte sollten auch bei anderen Distributionen und Paketmanagern ähnlich sein.

  • Podman installieren.
    sudo apt install podman
  • Wenn Sie Ubuntu 22.04 und früher verwenden, fügen Sie das PPA-Repository für distrobox hinzu.
    sudo add-apt-repository ppa:michel-slm/distrobox
    sudo apt update
  • Installieren Sie Distrobox.
    sudo apt install distrobox

Distrobox in Aktion

    • Die aufregendste Funktion von Distrobox ist die Möglichkeit, eine App im Container in ein Host-Betriebssystem zu exportieren, das über den App-Launcher gestartet werden kann. Wir können das tun, indem wir den Befehl distrobox-export im Container ausführen. Sobald Distrobox erfolgreich installiert ist, können wir damit beginnen, Container zu erstellen.
      • Erstellen Sie einen neuen Container, indem Sie mit dem Flag –name einen Namen angeben. Wenn kein Name angegeben wird, wird ein zufälliger Name gewählt. Das Basis-Image für den Container kann mit dem –image-Flag festgelegt werden. Im folgenden Befehl wird das Image-Flag nicht gesetzt.

      distrobox create –name ut-test

      • Verwenden Sie den Befehl am Ende der Ausgabe des Befehls create, um den Container einzugeben. Nach dem erfolgreichen Start des Containers wird die Shell des Containers aufgerufen. Sie können dies an der Änderung des Hostnamens von ubuntu-vm zu ut-test erkennen.

      distrobox eingeben ut-test

      • Überprüfen wir die os-release-Datei, um sicherzustellen, dass sie tatsächlich Fedora verwendet.

      cat /etc/os-release

      • Lassen Sie uns nun versuchen, kate, einen GUI-Texteditor, im Fedora-Container zu installieren und zu sehen, ob wir ihn benutzen können.

      sudo dnf install kate

      • Sobald die Installation abgeschlossen ist, können wir den Texteditor mit dem Befehl kate starten.
      • Wir können jetzt sehen, dass es wie eine native Anwendung läuft.
      • Wie bereits erwähnt, können wir das Containerbild mit dem Flag —image ändern.

      distrobox create –name ubuntu-distrobox –image ubuntu:22.04

      • Führen wir den obigen Befehl aus, um einen Ubuntu-Container zu starten, betreten wir den Container wie zuvor mit dem ut-test-Container und installieren kate mit dem unten stehenden Befehl und starten ihn dann auf die gleiche Weise wie zuvor.

      sudo apt install kate

      • Wenn die Anwendung startet und wir ihre Version überprüfen, würde sie sich von der auf dem Fedora-Container installierten Version unterscheiden. Außerdem können Sie oben im Fenster, wo der Name der Anwendung angezeigt wird, sehen, dass sie im Ubuntu-Container läuft.
      • Die aufregendste Funktion von Distrobox ist die Möglichkeit, eine App im Container in ein Host-Betriebssystem zu exportieren, das über den App-Launcher gestartet werden kann. Wir können das tun, indem wir den Befehl distrobox-export im Container ausführen. Führen wir den folgenden Befehl im Ubuntu-Container aus.

    distrobox-export –app kate

    • Sobald sie erfolgreich exportiert wurde, sollten wir in der Lage sein, sie über den App Launcher des Host-Rechners zu starten.

Unser Fazit zu Distrobox

Wir haben gesehen, dass Distrobox uns erlaubt, Anwendungen, die auf Containern laufen, nahtlos wie native Anwendungen zu nutzen. Es kann sogar als vollwertiges Betriebssystem verwendet werden.

Damit können wir jede Anwendung ausführen, solange sie für eine der Linux-Distributionen verfügbar ist, ohne uns Gedanken darüber machen zu müssen, ob sie auch für unsere Host-Distribution verfügbar ist.

Es kann auch dazu verwendet werden, Testumgebungen einzurichten, sei es, um die Anwendung über verschiedene Distributionen hinweg zu testen oder um die Testinstanz vom Host zu trennen und den Hostrechner sauber zu halten.

Dies ist eines der (relativ) neuen und aufregenden Tools, auf die wir in letzter Zeit gestoßen sind, und wir können es kaum erwarten, seine Anwendungsbereiche in der Zukunft zu sehen.

Share