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

So installieren Sie Docker auf einem Fedora-Linux-System

Docker ist ein Tool, das verwendet wird, um Software in einem Container auszuführen. Es ist eine großartige Möglichkeit für Entwickler und Benutzer, sich weniger Gedanken über die Kompatibilität mit einem Betriebssystem und Abhängigkeiten zu machen, da die enthaltene Software auf jedem System identisch ausgeführt werden sollte.

Docker steht zum Download und zur Installation auf Fedora sowie den meisten anderen Linux-Distributionen zur Verfügung. Die Installation auf Fedora kann jedoch etwas schwierig sein, da Red Hat in seinen Distributionen keine native Unterstützung für Docker bietet. Stattdessen forciert Red Hat die Unterstützung für Podman, eine Alternative zu Docker. Das macht Docker etwas schwieriger zu installieren, aber es ist immer noch möglich auf Fedora.

In diesem Leitfaden zeigen wir Ihnen, wie Sie Docker auf Fedora installieren und mit der Installation von containerisierter Software beginnen. Nachdem Docker installiert ist, können Sie es verwenden, um Softwarepakete zu installieren, ähnlich wie Sie den Paketmanager Ihrer Distribution verwenden würden, um eine App herunterzuladen. Der Unterschied zur Verwendung von Docker besteht darin, dass alles stärker automatisiert ist und Kompatibilität und Abhängigkeiten keine potenziellen Probleme mehr darstellen.

In diesem Tutorial lernen Sie:

  • So installieren Sie Docker
  • So starten Sie Docker und lassen es automatisch beim Booten laufen
  • So führen Sie Docker ohne Root aus
  • So suchen Sie nach einem Docker-Image
  • So installieren Sie ein Docker-Image
  • So führen Sie ein Docker-Image aus
  • Wie man Docker mit verschiedenen Befehlen überwacht
  • So starten Sie automatisch einen Docker-Container

Docker, auf dem ein Container-Image unter Fedora Linux ausgeführt wird

Softwareanforderungen und Linux-Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder verwendete Softwareversion
System Fedora-Linux
Software Docker
Andere Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl.
Konventionen # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl
$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden

Installieren Sie Docker auf Fedora

Red Hat hat uns einige Hindernisse in den Weg gelegt, sodass wir Docker nicht einfach mit einer einfachen dnf install installieren können Befehl. Wir müssen zuerst das Docker-Repository zu unserem System hinzufügen und dann einige widersprüchliche Pakete deinstallieren, die standardmäßig auf Fedora installiert sind.

  1. Beginnen Sie mit der Installation des dnf-plugins-core Paket, falls es noch nicht auf Ihrem System vorhanden ist. Dadurch können Sie Ihre dnf-Repositories verwalten und ihnen das offizielle Docker-Repo hinzufügen.
    $ sudo dnf -y install dnf-plugins-core
    
  2. Als nächstes fügen Sie das Docker-Repository mit dem folgenden Befehl zu Ihrem System hinzu.
    $ sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
    
  3. Bevor wir mit der Installation von Docker beginnen, müssen wir den podman entfernen und buildah Pakete aus unserem System, da sie mit Docker in Konflikt stehen und dessen Installation verhindern.
    $ sudo dnf remove podman buildah
    
  4. Schließlich können wir die drei benötigten Docker-Pakete installieren, indem wir den folgenden Befehl ausführen.
    $ sudo dnf install docker-ce docker-ce-cli containerd.io
    
  5. Starten Sie nach Abschluss der Installation den Docker-Dienst und aktivieren Sie ihn optional für die Ausführung bei jedem Neustart des Systems:
    $ sudo systemctl start docker.service
    $ sudo systemctl start containerd.service
    $ sudo systemctl enable docker.service
    $ sudo systemctl enable containerd.service
    
  6. Sie können überprüfen, ob Docker installiert ist, und einige Informationen über die aktuelle Version sammeln, indem Sie diesen Befehl eingeben:
    $ sudo docker version
    
  7. Ausgabe des Docker-Versionsbefehls

  8. Es gibt auch eine schnelle und einfache Möglichkeit, zu sehen, wie viele Docker-Container derzeit ausgeführt werden, und einige der konfigurierten Optionen von Docker anzuzeigen, indem Sie Folgendes eingeben:
    $ sudo docker info
    
  9. Ausgabe des Docker-Info-Befehls, der seine Konfiguration zeigt

Docker ohne Root ausführen

Standardmäßig müssen Sie sudo verwenden oder melden Sie sich bei root an, wann immer Sie einen Docker-Befehl ausführen möchten. Dieser nächste Schritt ist optional, aber wenn Sie es vorziehen, Docker als Ihr aktueller Benutzer auszuführen, fügen Sie Ihr Konto mit diesem Befehl zur Docker-Gruppe hinzu:

$ sudo usermod -aG docker $USER

Sie müssen Ihr System neu starten, damit diese Änderungen wirksam werden.

$ reboot

Suche nach einem Docker-Image

Jetzt können Sie Images mit Docker installieren. Wenn Sie den Namen eines Images, das Sie installieren möchten, bereits kennen, können Sie mit dem nächsten Abschnitt fortfahren. Wenn Sie Docker nach der gewünschten Software durchsuchen müssen, können Sie die folgende Befehlssyntax verwenden:

$ docker search [name]

Versuchen wir beispielsweise, nach nginx zu suchen, einer beliebten Webserver-Software.

$ docker search nginx

Docker kann nach allen verfügbaren Container-Images suchen

Wie Sie sehen können, gibt es ein offizielles Image für nginx (gekennzeichnet durch OFFICIAL Spalte) einfach nginx genannt . Es sind auch andere Versionen verfügbar, und Sie müssten ihre Beschreibungen lesen, um zu sehen, was sie vom offiziellen Bild unterscheiden.

Installieren Sie ein Docker-Image

Sobald Sie wissen, welches Image Sie installieren möchten, können Sie Docker mit dem folgenden Befehl anweisen, die gewünschte Software herunterzuladen. Nur als Beispiel installieren wir hello-world Paket, das verwendet werden kann, um sicherzustellen, dass Docker Images erfolgreich herunterladen und ausführen kann.

$ docker pull hello-world

Docker lädt ein Container-Image herunter

Die Ausgabe im obigen Screenshot zeigt, dass Docker das angegebene Image finden und herunterladen konnte.

Ausführen eines Docker-Images

Nachdem das Image heruntergeladen wurde, führen Sie es mit dem folgenden Befehl aus:

$ docker run hello-world

Docker konnte das Hello-World-Image erfolgreich ausführen

Überwachungs-Docker

Docker bietet uns viele Optionen, um zu sehen, was mit unseren Images los ist, wie viele Systemressourcen sie verwenden usw. Die folgenden Befehle sind praktisch, um Docker und unsere installierten Images zu überwachen.

Geben Sie Folgendes ein, um zu sehen, welche Docker-Container ausgeführt werden, und um ihren aktuellen Status zu überprüfen:

$ docker container ls

Der docker container ls Befehl zeigt aktuell laufende Container

Um eine Liste aller installierten Docker-Images anzuzeigen, geben Sie Folgendes ein:

$ docker images

Der Befehl docker images zeigt an, welche Images derzeit in Docker installiert sind

Geben Sie Folgendes ein, um die aktuelle CPU-, RAM- und Netzwerknutzung laufender Images anzuzeigen:

$ docker stats

Sehen Sie sich die aktuelle Systemnutzung von Docker-Images mit dem Befehl docker stats an

Geben Sie Folgendes ein, um die Netzwerkkonfiguration von Docker anzuzeigen:

$ docker network ls

Zeigen Sie aktuell konfigurierte Netzwerke in Docker mit docker network ls

an

Container automatisch starten

Wir haben bereits gesehen, wie Sie sicherstellen können, dass der Docker-Dienst automatisch gestartet wird, wenn Ihr Computer hochfährt. Falls Sie diesen Schritt übersprungen haben, hier ist der Befehl noch einmal.

$ sudo systemctl enable docker.service
$ sudo systemctl enable containerd.service

Wir können Docker-Dienste auch so steuern, dass sie automatisch gestartet werden. Hier sind ein paar Befehle, um ihr Verhalten zu steuern. Wir verwenden nginx wie unsere Beispielsoftware in diesen Befehlen.

  1. Um einen neuen Container zu starten und ihn so zu konfigurieren, dass er automatisch neu gestartet wird, sofern er nicht gestoppt oder Docker neu gestartet wurde, führen Sie den folgenden Befehl aus.
    $ docker run -d --restart unless-stopped nginx
    
  2. Wenn der Container bereits läuft, verwenden Sie diesen Befehl, um sicherzustellen, dass er automatisch neu gestartet wird.
    $ docker update --restart unless-stopped nginx
    
  3. Wir können auch sicherstellen, dass alle Container automatisch neu gestartet werden, sofern sie nicht explizit gestoppt werden, indem Sie den folgenden Befehl verwenden.
    $ docker update --restart unless-stopped $(docker ps -q)
    
  4. Um einen Container immer neu zu starten, auch wenn er manuell gestoppt wurde, verwenden Sie always Option anstelle von unless stopped .
    $ docker update --restart always nginx
    
  5. Sie können auch den on-failure verwenden Option, um Container nur dann automatisch neu starten zu lassen, wenn sie auf einen Fehler gestoßen sind.
    $ docker update --restart on-failure nginx
    
  6. Zu guter Letzt, um Ihren Container wieder auf die Standardeinstellung zu konfigurieren, was bedeutet, dass kein automatischer Neustart erfolgt, verwenden Sie no Option.
    $ docker update --restart no nginx
    

Fehlerbehebung

Wenn Sie auf Probleme mit Docker stoßen, einschließlich Berechtigungsfehlern oder „Kann keine Verbindung zum Docker-Daemon herstellen“, haben die Docker-Entwickler ein praktisches Skript, das Sie ausführen können, um nach einer Reihe häufiger Probleme zu suchen. So können Sie es herunterladen und ausführen.

$ curl https://raw.githubusercontent.com/docker/docker/master/contrib/check-config.sh > check-config.sh
$ bash ./check-config.sh

Das Ausführen des Docker-Skripts check-config zeigt uns, ob auf unserem System etwas falsch konfiguriert ist

Abschlussgedanken

Obwohl RHEL und damit auch Fedora Docker nicht nativ unterstützen, ist es dennoch möglich, es zum Laufen zu bringen, wie wir in diesem Handbuch gesehen haben. RHEL-native Tools wie Podman und Buildah sind mit Docker kompatibel, benötigen jedoch keine Server-/Client-Architektur, um ausgeführt zu werden. Die Verwendung nativer Tools ist nach Möglichkeit immer der empfohlene Weg, aber aus dem einen oder anderen Grund möchten Sie vielleicht trotzdem das ursprüngliche Docker installieren.


Fedora
  1. So installieren Sie Docker unter Rocky Linux 8

  2. So installieren Sie Docker auf Fedora 28 / Fedora 27

  3. So installieren Sie PostgreSQL 14 unter Fedora Linux

  4. So installieren Sie VLC unter Fedora Linux

  5. So installieren Sie Zoom unter Fedora Linux 35

So installieren Sie Python 3.10 unter Fedora Linux

So installieren Sie Slack auf Fedora 35

So installieren Sie Nginx auf Fedora 35

So installieren Sie Docker auf Fedora 35

So installieren Sie Docker unter Linux Mint 19

So installieren Sie Docker unter Linux Mint 20