GNU/Linux >> LINUX-Kenntnisse >  >> Fedora

Erste Schritte mit der Toolbox auf Fedora Silverblue

In diesem Leitfaden besprechen wir, was Toolbox ist und wie man eine containerisierte Entwicklungsumgebung mit Toolbox unter Fedora Linux erstellt und verwaltet.

Einführung

In den letzten Jahren hat die Virtualisierung von Linux-Containern stark an Dynamik gewonnen. Tatsächlich ist die neue Generation der Virtualisierung die Containerisierung.

Heutzutage verwenden die Anwendungsentwickler meist Container als ihre bevorzugte Entwicklungsumgebung. Es gibt viele Tools zum Erstellen und Verwalten von Linux-Containern. Podmann , Docker , Landstreicher sind einige beliebte Containerverwaltungsanwendungen.

Heute werden wir ein weiteres Dienstprogramm namens Toolbox besprechen was es einfach macht, eine containerisierte Umgebung für die tägliche Softwareentwicklung zu verwenden.

Was ist Toolbox?

Toolbox ist ein internes Tool von Fedora zum Erstellen einer containerisierten Befehlszeilenumgebung auf Ihrem Fedora-Basissystem.

Es ist besonders nützlich, um eine Use-and-Throw-Softwareentwicklungsumgebung einzurichten, in der Entwicklungstools und Bibliotheken installiert und verwendet werden können.

Toolbox wurde speziell für OTree entwickelt basierte Systeme wie Fedora Core OS und Fedora Silverblue . Wie Sie vielleicht bereits wissen, sind die OSTree-basierten Systeme unveränderlich.

Toolbox basiert auf OCI-Container-Images und Podman. Es benötigt kein root Berechtigungen zum Bereitstellen von Containern. Das Gute ist, dass die Installation und Verwendung von Toolbox sehr einfach zu bedienen und leicht zu merken ist!

Warum Toolbox?

Das eigentliche Ziel des unveränderlichen Betriebssystems besteht darin, die Installation von Software auf dem Hostsystem zu verhindern und die Benutzer zu ermutigen, die Software in Containern zu installieren.

Im Gegensatz zu den OTree-basierten Systemen sind die Container vollständig änderbar. So können Sie Ihre bevorzugten Entwicklungs- und Debugging-Tools, Editoren und SDKs in den Containern installieren. Auf dem Hostsystem wird nichts installiert.

Um es für Laien auszudrücken, wir können mit Hilfe der Toolbox einen veränderlichen Container auf einem unveränderlichen Host-Betriebssystem bereitstellen.

Wie funktioniert Toolbox?

Standardmäßig erstellt Toolbox die Container basierend auf Ihrem aktuellen System. Wenn Ihr Basissystem beispielsweise Fedora 35 ist, erstellt die Toolbox einen Container auf Basis von Fedora 35. In diesem Container können Sie Paketmanager wie yum verwenden oder dnf um Ihre bevorzugten Anwendungen zu installieren. Sie können auch Container basierend auf anderen Fedora-Versionen erstellen.

Sie können mehr als einen Container gleichzeitig starten und gleichzeitig mit der Arbeit an verschiedenen Projekten beginnen. Wenn Sie mit dem Container fertig sind, löschen Sie ihn einfach und erstellen Sie einen neuen, wann immer Sie möchten. Auch hier wird das Hostsystem in keiner Weise beeinträchtigt. Auf diese Weise können wir ein sauberes Host-Betriebssystem aufrechterhalten. Dadurch wird auch das Durcheinander drastisch vermieden und der Prozess der Neuinstallation des Host-Betriebssystems reduziert.

Toolbox auf Fedora installieren

Toolbox ist mit Fedora Silverblue 30 und neueren Editionen vorinstalliert. Auf Fedora-Workstations können Sie es mit dnf installieren oder yum Paketmanager:

$ sudo dnf install toolbox

Oder,

$ sudo yum install toolbox

Erste Schritte mit Toolbox auf Fedora Silverblue

Toolbox bietet eine kleine Anzahl von Befehlen zum Erstellen, Auflisten, Eingeben und Entfernen von Containern.

1. Toolbox-Hilfe anzeigen

Wenn Sie neu bei Toolbox sind, ist es besser, den Toolbox-Hilfeabschnitt anzuzeigen, um einen Einblick in die Funktionsweise der einzelnen Befehle zu erhalten. Um die Toolbox-Hilfe anzuzeigen, verwenden Sie einen der folgenden Befehle:

$ toolbox --help
$ toolbox help
$ toolbox -h

Beginnen wir nun mit der Erstellung neuer Container.

2. Erstellen Sie einen neuen Container

Um einen neuen Container basierend auf Ihrer aktuellen Fedora OS-Version zu erstellen, führen Sie einfach Folgendes aus:

$ toolbox create

Dieser Befehl sucht nach dem Basis-Image, das zum Erstellen des Containers von Ihrem lokalen System verwendet werden soll. Wenn kein lokales Image gefunden wird, werden Sie aufgefordert, das entsprechende Image herunterzuladen. Geben Sie j ein und ENTER-Taste, um das Bild herunterzuladen.

Beispielausgabe:

Image required to create toolbox container.
Download registry.fedoraproject.org/fedora-toolbox:33 (500MB)? [y/N]: y
Created container: fedora-toolbox-33
Enter with: toolbox enter

Toolbox lädt ein Image, das der Version des Betriebssystems Ihres aktuellen Hostsystems entspricht, aus der Fedora-Registrierung herunter und erstellt basierend auf dem heruntergeladenen Image einen neuen Container. Die Images sind normalerweise abgespeckte Versionen der tatsächlichen Distributionen.

2.1. Container mit benutzerdefiniertem Namen erstellen

Die Toolbox weist automatisch einen eindeutigen Namen zu (z. B. fedora-toolbox-33 ) in den neu erstellten Container.

Wenn Sie einen Container mit einem benutzerdefinierten Namen Ihrer Wahl erstellen möchten, verwenden Sie den --container , -c flag gefolgt vom Namen des Containers wie unten:

$ toolbox create --container mytoolbox-f33

Oder kurz:

$ toolbox create -c mytoolbox-f33

Hier, mytoolbox-f33 ist der Name des Containers.

3. Erstellen Sie einen neuen Container basierend auf einer bestimmten Betriebssystemversion

Wie ich bereits erwähnt habe, erstellt Toolbox Container basierend auf der aktuellen Betriebssystemversion. Wenn Sie beispielsweise Fedora 34 ausführen, erstellt Toolbox einen Container basierend auf dem Fedora 34-Image.

Sie können jedoch auch Container basierend auf anderen Versionen erstellen. Ich habe einen Fedora 32-Container auf meiner Fedora 33 Silverblue-Edition mit dem folgenden Befehl erstellt:

$ toolbox create --release f32

Oder kurz,

$ toolbox create -r f32

4. Container auflisten

Um alle lokal verfügbaren Container auf Ihrem System aufzulisten, führen Sie Folgendes aus:

$ toolbox list

Beispielausgabe:

IMAGE ID      IMAGE NAME                                        CREATED
9659c2039e64  registry.fedoraproject.org/f32/fedora-toolbox:32  4 months ago
675192cc4238  registry.fedoraproject.org/fedora-toolbox:33      4 weeks ago

CONTAINER ID  CONTAINER NAME     CREATED         STATUS      IMAGE NAME
2cfb48d6a6c5  fedora-toolbox-32  4 months ago    exited      registry.fedoraproject.org/f32/fedora-toolbox:32
1f709997b871  fedora-toolbox-33  27 minutes ago  configured  registry.fedoraproject.org/fedora-toolbox:33

Wie Sie in der obigen Ausgabe sehen können, habe ich zwei Container, nämlich fedora-toolbox-32 und fedora-toolbox-33 auf meinem System.

Der obere Abschnitt der Ausgabe zeigt die Details der Basisimages, die zum Erstellen der Container verwendet wurden, z. B. Image-ID, Name des Images und wann diese Images erstellt wurden. Auf der unteren Seite sehen Sie die Details der Container wie Container-ID, Containername, wann der Container erstellt wurde und den Status des Containers.

Sie können sich Containerdetails oder Bilddetails auch separat anzeigen lassen. Um nur die Containerdetails aufzulisten, verwenden Sie --containers , -c Möglichkeit:

$ toolbox list --containers
 CONTAINER ID  CONTAINER NAME     CREATED       STATUS   IMAGE NAME
 2cfb48d6a6c5  fedora-toolbox-32  4 months ago  running  registry.fedoraproject.org/f32/fedora-toolbox:32
 1f709997b871  fedora-toolbox-33  21 hours ago  running  registry.fedoraproject.org/fedora-toolbox:33

Um nur die Bilder aufzulisten, verwenden Sie --images , -i Flagge:

$ toolbox list --images
 IMAGE ID      IMAGE NAME                                        CREATED
 9659c2039e64  registry.fedoraproject.org/f32/fedora-toolbox:32  4 months ago
 675192cc4238  registry.fedoraproject.org/fedora-toolbox:33      4 weeks ago

Bitte beachten Sie, dass der Name des Containers und der Bilder bis auf den letzten Teil ihres Namens fast gleich aussehen.

Der Containername hat normalerweise einen Bindestrich (-) vor dem letzten Teil des Namens (z. B. fedora-toolbox-33 ) und der Bildname hat einen Doppelpunkt (:) (z. B. fedora-toolbox:33 ).

5. In die Behälter eintreten

Wir haben die Container bereits erstellt, aber noch nicht betreten. Lassen Sie uns also mit dem Befehl:

in einen Container eintreten
$ toolbox enter

Sobald Sie den Container betreten haben, wird dem Shell-Prompt eine Raute vorangestellt Symbol wie in der folgenden Ausgabe gezeigt:

⬢[[email protected] ~]$ 

Haben Sie das Rautensymbol ganz links in der Eingabeaufforderung bemerkt? Das bedeutet, dass Sie sich im Container befinden.

Container lassen sich nahtlos in Ihr aktuelles Betriebssystem integrieren. In jedem Container finden Sie Ihren bestehenden Benutzernamen und Ihre Berechtigungen.

Sie können auf Ihr Home-Verzeichnis und mehrere andere Speicherorte zugreifen, so wie Sie es von Ihrem Host-System aus tun. Sie können auch auf System- und Sitzungs-D-Bus, Systemjournal und Kerberos usw. zugreifen.

Jeder Container enthält allgemeine Befehlszeilentools, einschließlich eines Paketmanagers (z. B. DNF auf Fedora). Sie können also jede Software innerhalb des Containers installieren und testen.

Der folgende Befehl installiert beispielsweise alle erforderlichen Entwicklungstools:

$ sudo yum groupinstall "Development Tools"

5.1. In einen bestimmten Container eintreten

Wenn Sie die toolbox enter ein Befehl ohne Optionen, öffnet er den Standard-Toolbox-Container. Der Standardcontainer basiert auf dem Betriebssystem Ihres Hosts.

Wenn Sie einen anderen Container öffnen möchten, erwähnen Sie ausdrücklich seinen Namen wie unten:

$ toolbox enter -c fedora-toolbox-32

Hier -c wird verwendet, um auf den Containernamen und fedora-toolbox-32 zu verweisen ist der Containername.

6. Toolbox verlassen

Wenn Sie mit dem Container fertig sind, geben Sie einfach exit ein um sich vom Container abzumelden.

$ exit

7. Befehle in Containern ausführen, ohne sie einzugeben

Eine bemerkenswerte Funktion von Toolbox ist, dass Sie Befehle für einen Container ausführen können, ohne sie einzugeben. Der folgende Befehl zeigt die Verteilungsfreigabe des Standardcontainers vom Hostsystem an:

$ toolbox run cat /etc/redhat-release
Fedora release 33 (Thirty Three)

Wenn Sie die toolbox run ausführen Befehl ohne Optionen ausführen, werden die Befehle im Standardcontainer ausgeführt. Sie können Befehle auch auf anderen Containern ausführen, indem Sie ihren Namen mit --container angeben , -c Flagge:

$ toolbox run -c fedora-toolbox-32 cat /etc/redhat-release
Fedora release 32 (Thirty Two)

8. Beenden Sie die Ausführung von Containern

Nachdem Sie den Container verlassen haben, läuft er weiter, bis Sie ihn stoppen. Es gibt keinen direkten Toolbox-Befehl, um einen laufenden Container zu stoppen. Wir können jedoch podman verwenden Befehl zum Stoppen der Toolbox-Container:

$ podman container stop fedora-toolbox-33

Denken Sie daran, dass Toolbox unter der Haube Podman verwendet.

9. Toolbox-Container und -Bilder entfernen

Wenn Sie keinen Container oder sein Basis-Image möchten, können Sie sie einfach wie unten beschrieben entfernen.

Stellen Sie vor dem Löschen eines Containers sicher, dass Sie diesen Container verlassen haben.

Um einen Container zu entfernen, führen Sie Folgendes aus:

$ toolbox rm fedora-toolbox-32

Der obige Befehl entfernt den Container namens fedora-toolbox-32 .

Um einen Container zwangsweise zu entfernen, selbst wenn er läuft, verwenden Sie --force , -f Flagge:

$ toolbox rm -f fedora-toolbox-32

Um alle Container zu entfernen, verwenden Sie --all , -a Flagge:

$ toolbox rm --all

Überprüfen Sie, ob der Container gelöscht wurde, indem Sie die verfügbaren Container auflisten:

$ toolbox list

Ebenso können Sie die Toolbox-Bilder mit toolbox rmi entfernen Befehl wie unten:

$ toolbox rmi fedora-toolbox:32

Bitte beachten Sie das i im obigen Befehl. Der rm Der Befehl entfernt die Container, während rmi Befehl entfernt die Bilder. Vergessen Sie auch nicht, den korrekten Namen des zu entfernenden Bildes anzugeben.

Um alle Bilder zu entfernen, verwenden Sie --all , -a Flagge:

$ toolbox rmi --all

Verwenden Sie Podman, um Toolbox-Container und Bilder zu verwalten

Da Toolbox nur der Wrapper für Podman ist, können Sie Podman-Befehle direkt verwenden, um Container zu verwalten.

Um Toolbox-Container mit dem Befehl podman aufzulisten, führen Sie Folgendes aus:

$ podman ps -a

Um Toolbox-Images mit Podman aufzulisten, führen Sie Folgendes aus:

$ podman images

So starten Sie einen Container:

$ podman start fedora-toolbox-33

So zeigen Sie die Live-Statistiken zur Ressourcennutzung aller laufenden Container an:

$ podman stats

So stoppen Sie einen Container:

$ podman stop fedora-toolbox-33

Behälter prüfen:

$ podman inspect fedora-toolbox-33

Container entfernen:

$ podman rm <container-name>

Bild entfernen:

$ podman rmi <image-name>

Es sind viele Podman-Befehle verfügbar. Sie können alle verfügbaren allgemeinen Befehle und Optionen im Podman-Hilfebereich anzeigen:

$ podman --help

Schlussfolgerung

Container sind nicht nur für Experimentier- und Lernzwecke, sie eignen sich auch ideal für isolierte Entwicklungsumgebungen, in denen Sie an verschiedenen Projekten auf verschiedenen Betriebssystemversionen arbeiten können. Toolbox macht die Verwaltung von Containern viel einfacher und besser!


Fedora
  1. Erste Schritte mit Zsh

  2. Erste Schritte mit ls

  3. Erste Schritte mit Samba für Interoperabilität

  4. Erste Schritte mit PostgreSQL unter Linux

  5. Wie fange ich mit Juju an?

Erste Schritte mit Nix Package Manager

Erste Schritte mit Docker Compose unter Linux

Erste Schritte mit systemctl

Erste Schritte mit cPanel

Erste Schritte mit SiteApps

Erste Schritte mit cPanel/WHM