
Diese Anleitung behandelt die Installation der Docker Community Edition (CE) auf Ubuntu 20.04, den Umgang mit Images und Containern sowie das Hochladen eigener Images in ein Docker-Repository. Für Cloud-Nutzer bietet UpCloud ¹ (europäischer Cloud-Anbieter) robuste, leistungsstarke Server, die Container-Workloads mit überlegener Netzwerkleistung und skalierbarer Infrastruktur unterstützen.
Voraussetzungen
Bevor Sie beginnen, vergewissern Sie sich, dass Sie die folgenden Voraussetzungen erfüllen:
Server mit Ubuntu-20.04 oder höher.
Non-Root-User, der über sudo-Rechte verfügt.
Überprüfen Sie, ob die Firewall korrekt eingerichtet ist.
Wir haben eine Partnerschaft mit UpCloud geschlossen und bieten Ihnen 25 € Guthaben gratis an – starten Sie jetzt mit Cloud-Servern für Self-Hosting und mehr!
Installation von Docker
Aktualisieren der Paketliste
Beginnen Sie damit, Ihre Paketliste zu aktualisieren, damit Ihr System die neuesten Versionsinformationen aller Pakete abruft. Führen Sie folgenden Befehl aus:
sudo apt updateDieser Befehl verbindet sich mit den Ubuntu-Repositories und aktualisiert die lokale Paketdatenbank – eine Voraussetzung für die Installation der Docker-Abhängigkeiten.
Installation erforderlicher Pakete
Installieren Sie die notwendigen Pakete, die apt ermöglichen, HTTPS für den Paketdownload zu nutzen. Sichern Sie die Downloads und überprüfen Sie die Paketintegrität mit:
sudo apt install apt-transport-https ca-certificates curl software-properties-commonDiese Pakete sind essentiell für die sichere Kommunikation und das Management der Software-Eigenschaften während der Docker-Installation.
Hinzufügen des Docker GPG-Schlüssels
Um die Authentizität der Pakete sicherzustellen, fügen Sie den offiziellen Docker GPG-Schlüssel hinzu. Dieser Schritt validiert die Docker-Pakete, die Sie herunterladen, und schützt vor Manipulationen:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -Hinzufügen des Docker-Repositories
Binden Sie das Docker-Repository in Ihre Paketquellen ein, um Zugriff auf die neuesten Docker CE-Releases zu erhalten. Führen Sie folgenden Befehl aus, um das Repository für Ubuntu 20.04 (focal) hinzuzufügen:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"Diese Aktion aktualisiert Ihre Paketquellen und stellt sicher, dass Docker-Pakete aus dem offiziellen Docker-Repository bezogen werden.
Überprüfen der Repository-Einrichtung
Bevor Sie Docker installieren, überprüfen Sie, ob das Repository korrekt hinzugefügt wurde. Zeigen Sie die zur Verfügung stehende Docker CE-Kandidatenversion an mit:
apt-cache policy docker-ceDieser Schritt bestätigt, dass die Docker-Pakete von der richtigen Quelle und nicht aus den Standard-Ubuntu-Repositories installiert werden.
Installation von Docker
Nachdem das Repository eingerichtet ist, installieren Sie Docker CE mit folgendem Befehl:
sudo apt install docker-ceDieser Befehl installiert sowohl den Docker-Daemon als auch die Docker-Befehlszeilenschnittstelle und bereitet Ihr System für das Container-Management vor.
Überprüfung des Docker-Status
Nach der Installation überprüfen Sie, ob Docker läuft und so konfiguriert ist, dass es beim Booten startet. Prüfen Sie den Status des Dienstes mit:
sudo systemctl status dockerDie Ausgabe sollte anzeigen, dass Docker aktiv und laufend ist – ein Hinweis darauf, dass die Installation erfolgreich war.
Docker ohne Sudo verwenden
Hinzufügen des Benutzers zur Docker-Gruppe
Standardmäßig erfordern Docker-Befehle sudo-Rechte. Um Docker-Befehle ohne sudo auszuführen, fügen Sie Ihren Benutzer der Docker-Gruppe hinzu:
sudo usermod -aG docker ${USER}Anwenden der Gruppenänderung
Nach der Änderung der Gruppenmitgliedschaft müssen Sie sich ab- und wieder anmelden oder den folgenden Befehl ausführen, um Ihre Sitzung zu aktualisieren:
su - ${USER}Bestätigung der Gruppenmitgliedschaft
Überprüfen Sie, ob Ihr Benutzer nun Mitglied der Docker-Gruppe ist, indem Sie folgenden Befehl ausführen:
groupsIn der Ausgabe sollte „docker“ unter Ihren Gruppen aufgeführt sein, was Ihnen erlaubt, Docker-Befehle ohne sudo auszuführen.
Verwendung von Docker-Befehlen
Verständnis der Befehlsstruktur von Docker
Docker-Befehle folgen einer konsistenten Struktur, die das Container-Management vereinfacht. Die allgemeine Syntax lautet:
docker [option] [command] [arguments]Diese Struktur erleichtert es, die Möglichkeiten von Docker zu erkunden und spezifische Befehle auszuführen.
Hilfe zu Befehlen aufrufen
Um eine Liste aller verfügbaren Docker-Befehle anzuzeigen, geben Sie ein:
dockerFür detaillierte Hilfe zu einem spezifischen Befehl fügen Sie die Option --help hinzu, wie hier:
docker run --helpDiese Vorgehensweise bietet umfassende Informationen zur Nutzung des Befehls und zu den verfügbaren Optionen.
Arbeiten mit Docker-Images
Testen von Docker mit dem Hello-World-Image
Images bilden die Grundlage der Docker-Container. Überprüfen Sie Ihre Installation, indem Sie einen einfachen Test mit dem hello-world-Image ausführen:
docker run hello-worldBeim Ausführen dieses Befehls lädt Docker das hello-world-Image (falls noch nicht vorhanden), erstellt einen Container und zeigt eine Willkommensnachricht an, die bestätigt, dass Ihre Einrichtung korrekt funktioniert.
Suchen nach Docker-Images
Um Images auf Docker Hub zu erkunden, können Sie nach spezifischen Images suchen. Um beispielsweise nach einem Ubuntu-Image zu suchen, führen Sie aus:
docker search ubuntuDieser Befehl liefert eine Liste verfügbarer Images mit Angaben zur Herkunft und Beliebtheit des jeweiligen Images.
Herunterladen eines Images von Docker Hub
Laden Sie das Ubuntu-Image herunter, indem Sie den Pull-Befehl ausführen:
docker pull ubuntuDieser Befehl lädt das Image von Docker Hub herunter und speichert es lokal zur weiteren Verwendung.
Auflisten heruntergeladener Images
Überprüfen Sie nach dem Herunterladen der Images deren Vorhandensein auf Ihrem System, indem Sie diese auflisten:
docker imagesDie Ausgabe zeigt Details wie Image-Namen, Tags, Größen und Erstellungsdaten.
Ausführen eines Docker-Containers
Starten eines interaktiven Containers
Um einen Container basierend auf dem Ubuntu-Image mit interaktivem Shell-Zugriff zu starten, führen Sie aus:
docker run -it ubuntuDie Optionen -it reservieren ein pseudo-TTY und halten den Standard-Input offen, sodass Sie direkt mit dem Container interagieren können.
Aktualisieren des Containers und Installieren von Anwendungen
Innerhalb des Containers aktualisieren Sie die Paketdatenbank mit:
apt updateInstallieren Sie Anwendungen wie Node.js, um Veränderungen in der Containerumgebung zu beobachten:
apt install nodejsÜberprüfen Sie die Installation, indem Sie die Node.js-Version abfragen:
node -vVerlassen des Containers
Wenn Sie Ihre Arbeit im Container beendet haben, geben Sie exit ein, um die interaktive Sitzung zu beenden. Dies beendet den interaktiven Modus des Containers, bewahrt jedoch etwaige vorgenommenen Änderungen.
Management von Docker-Containern
Anzeigen aktiver Container
Überwachen Sie Ihre laufenden Container, indem Sie nur die aktiven anzeigen:
docker psDieser Befehl liefert Details wie Container-IDs, verwendete Images und den Laufzeitstatus.
Anzeigen aller Container
Um eine vollständige Liste zu erhalten, die sowohl laufende als auch gestoppte Container enthält, verwenden Sie:
docker ps -aDiese umfassende Ansicht hilft Ihnen, die Containerhistorie und -nutzung nachzuvollziehen.
Starten und Stoppen von Containern
Starten Sie einen gestoppten Container neu, indem Sie dessen Container-ID oder Namen angeben:
docker start [container_id_or_name]Umgekehrt stoppen Sie einen laufenden Container mit:
docker stop [container_id_or_name]Mit diesen Befehlen können Sie den Zustand der Container effektiv steuern.
Entfernen unnötiger Container
Wenn ein Container nicht mehr benötigt wird, entfernen Sie ihn, um Systemressourcen freizugeben. Verwenden Sie folgenden Befehl (ersetzen Sie dabei den Platzhalter durch die tatsächliche Container-ID oder den Namen):
docker rm [container_id_or_name]Das Entfernen ungenutzter Container trägt zu einer sauberen und effizienten Umgebung bei.
Erstellen von Docker-Images
Änderungen eines Containers committen
Nachdem Sie im Container Änderungen vorgenommen haben, können Sie diese sichern, indem Sie sie in ein neues Image übernehmen. Führen Sie dazu den Commit-Befehl mit einer aussagekräftigen Nachricht und Autor-Informationen aus:
docker commit -m "Installed Node.js and updated packages" -a "Your Name" [container_id] new_image_nameDieser Vorgang erstellt einen Schnappschuss Ihres Containers, den Sie für zukünftige Deployments wiederverwenden können.
Bestätigung des neuen Images
Überprüfen Sie, ob das neue Image erfolgreich erstellt wurde, indem Sie Ihre lokalen Images auflisten:
docker imagesDiese Überprüfung stellt sicher, dass Ihr benutzerdefiniertes Image unter den verfügbaren Images erscheint.
Hochladen von Images zu Docker Hub
Anmeldung bei Docker Hub
Um Ihr benutzerdefiniertes Image zu teilen, melden Sie sich zunächst bei Docker Hub mit Ihren Zugangsdaten an:
docker loginNach erfolgreicher Authentifizierung können Sie Images in Ihr Docker Hub Repository hochladen.
Taggen des neuen Images
Falls Ihr Docker Hub-Benutzername von Ihrem lokalen Benutzernamen abweicht, versehen Sie Ihr Image mit einem passenden Tag:
docker tag new_image_name your_dockerhub_username/new_image_nameDurch das richtige Taggen wird sichergestellt, dass das Image Ihrem Docker Hub-Konto zugeordnet wird.
Hochladen des Images in das Repository
Laden Sie Ihr Image mit dem Push-Befehl zu Docker Hub hoch:
docker push your_dockerhub_username/new_image_nameDieser Befehl überträgt Ihr Image in das Repository, sodass es auf anderen Systemen verwendet werden kann. Der Vorgang kann je nach Netzwerkgeschwindigkeit und Image-Größe einige Minuten dauern.
Fazit
Sie haben nun Docker auf Ubuntu 20.04 installiert, grundlegende Docker-Befehle erkundet, Images und Container verwaltet sowie ein benutzerdefiniertes Image zu Docker Hub hochgeladen. Diese Anleitung bietet eine solide Basis in der Containerisierung, sodass Sie gut vorbereitet sind, Docker in Ihre Entwicklungs- und Bereitstellungsprozesse zu integrieren.
Für leistungsstarke Cloud-Lösungen, die Container-Workloads optimieren, bietet UpCloud ¹ moderne Netzwerkfunktionen und skalierbare Infrastrukturen, die sicherstellen, dass Ihre Docker-Anwendungen in Produktionsumgebungen effizient laufen.
¹ Dieser Link verweist auf eine kommerzielle Website und ist als „gesponsert“ klassifiziert.
Geschrieben von
Gegenfeld Team
Gegenfeld Team