So installieren Sie Docker auf CentOS: Vollständiger Schritt-für-Schritt-Leitfaden
Docker hat die Art und Weise, wie Entwickler Anwendungen erstellen, versenden und ausführen, grundlegend verändert. Durch das Verpacken von Software in leichte, portable Container beseitigt Docker das klassische Problem „Es funktioniert auf meinem Computer” und vereinfacht sowohl Entwicklungs-Workflows als auch Produktionsbereitstellungen erheblich. Wenn Sie CentOS verwenden und die Kraft der Containerisierung nutzen möchten, führt Sie dieser umfassende Leitfaden durch jeden Schritt – von einer frischen Systemaktualisierung bis zur erweiterten Konfiguration.
Egal, ob Sie eine einzelne Webanwendung bereitstellen oder komplexe Multi-Container-Umgebungen orchestrieren, die korrekte Installation von Docker auf CentOS ist der kritische erste Schritt.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie haben:
- Einen CentOS 7 oder CentOS 8 Server (physisch oder virtuell)
- Ein Benutzerkonto mit
sudoPrivilegien - Eine stabile Internetverbindung
- Grundlegende Vertrautheit mit der Linux-Befehlszeile
> Pro-Tipp: Für das beste Docker-Erlebnis sollten Sie es auf einem VPS Hosting Plan ausführen. Ein virtueller privater Server bietet Ihnen vollständigen Root-Zugriff, dedizierte Ressourcen und die Flexibilität, Container ohne die Einschränkungen gemeinsamer Umgebungen auszuführen.
Schritt 1: System aktualisieren
Bevor Sie neue Software installieren, aktualisieren Sie immer Ihre vorhandenen Pakete, um Kompatibilität und Sicherheit zu gewährleisten. Führen Sie den folgenden Befehl aus:
sudo yum update -yDieser Befehl aktualisiert alle installierten Pakete auf ihre neuesten Versionen. Dies kann je nach Anzahl der ausstehenden Updates einige Minuten dauern. Ein vollständig aktualisiertes System reduziert das Risiko von Abhängigkeitskonflikten während der Docker-Installation.
Schritt 2: Erforderliche Abhängigkeiten installieren
Docker benötigt mehrere Pakete auf Systemebene, um ordnungsgemäß zu funktionieren. Installieren Sie diese mit einem einzigen Befehl:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2Hier ist, was jedes Paket tut:
| Paket | Zweck |
|---|---|
yum-utils | Bietet das yum-config-manager Dienstprogramm zur Verwaltung von Repositories |
device-mapper-persistent-data | Erforderlich für den Device-Mapper-Speichertreiber von Docker |
lvm2 | Logical Volume Manager-Unterstützung für das Speicher-Backend von Docker |
Diese Abhängigkeiten stellen sicher, dass Docker den Container-Speicher auf Ihrem CentOS-System effizient und zuverlässig verwalten kann.
Schritt 3: Offizielles Docker-Repository hinzufügen
Die Standard-Paketrepositorys von CentOS enthalten nicht die neuesten Docker-Pakete. Sie müssen Dockers offizielles Repository hinzufügen, um die aktuellste, stabile Version zu erhalten:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoDieser Befehl fügt Dockers offizielles CentOS-Repository zur Repository-Liste Ihres Systems hinzu. Die Verwendung der offiziellen Quelle garantiert, dass Sie echte, aktuelle Docker-Pakete direkt von Docker Inc. erhalten, anstatt möglicherweise veraltete Versionen von Drittanbieter-Spiegeln.
Sie können überprüfen, ob das Repository erfolgreich hinzugefügt wurde, indem Sie Ihre konfigurierten Repositorys auflisten:
sudo yum repolistSchritt 4: Docker Engine installieren
Mit dem Repository eingerichtet, ist die Installation von Docker unkompliziert:
sudo yum install -y docker-ce docker-ce-cli containerd.io> Hinweis: Es wird empfohlen, auch docker-ce-cli (die Docker-Befehlszeilenschnittstelle) und containerd.io (die Container-Laufzeit) zusammen mit der Hauptengine zu installieren, um ein vollständiges, produktionsreifes Setup zu erhalten.
Dies installiert die Docker Community Edition (CE) — die kostenlose, Open-Source-Version von Docker, die sich perfekt für Entwicklungs- und Produktionsworkloads eignet.
Schritt 5: Docker-Dienst starten und aktivieren
Die Installation von Docker startet den Dienst nicht automatisch. Sie müssen den Docker-Daemon starten und ihn so konfigurieren, dass er beim Systemstart automatisch startet:
sudo systemctl start docker
sudo systemctl enable dockersystemctl start docker— Startet den Docker-Dienst sofortsystemctl enable docker— Konfiguriert Docker so, dass es bei jedem Neustart des Servers automatisch startet
Dienststatus überprüfen
Bestätigen Sie, dass Docker korrekt ausgeführt wird:
sudo systemctl status dockerSie sollten eine Ausgabe sehen, die anzeigt, dass der Dienst aktiv (wird ausgeführt) ist. Wenn der Status Fehler anzeigt, überprüfen Sie die Systemprotokolle mit journalctl -u docker für Fehlerbehebungsdetails.
Schritt 6: Docker-Installation überprüfen
Führen Sie Dockers integrierten Test aus, um zu bestätigen, dass alles wie erwartet funktioniert:
sudo docker run hello-worldDieser Befehl führt Folgendes aus:
- Kontaktiert die Docker Hub Registry
- Lädt das leichte
hello-worldTest-Image herunter - Erstellt einen neuen Container aus diesem Image
- Führt den Container aus, der eine Bestätigungsmeldung ausgibt
Wenn Ihre Installation erfolgreich ist, sehen Sie eine Ausgabe, die mit Folgendem beginnt:
Hello from Docker!
This message shows that your installation appears to be working correctly.Glückwunsch – Docker ist jetzt vollständig installiert und betriebsbereit auf Ihrem CentOS-Server.
Schritt 7: Docker für Nicht-Root-Benutzer konfigurieren (Optional, aber empfohlen)
Standardmäßig erfordern Docker-Befehle sudo (Root-Privilegien). Für Sicherheit und Komfort in Entwicklungsumgebungen können Sie bestimmten Nicht-Root-Benutzern das Ausführen von Docker-Befehlen ermöglichen, indem Sie sie zur docker Gruppe hinzufügen.
Docker-Gruppe erstellen
In den meisten Fällen wird diese Gruppe während der Installation automatisch erstellt. Falls nicht, erstellen Sie sie manuell:
sudo groupadd dockerBenutzer zur Docker-Gruppe hinzufügen
Ersetzen Sie your_username durch den tatsächlichen Linux-Benutzernamen:
sudo usermod -aG docker your_usernameÄnderungen anwenden
Melden Sie sich ab und wieder an, um Ihre Gruppenmitgliedschaft zu aktualisieren. Alternativ können Sie die Änderung in der aktuellen Sitzung aktivieren:
newgrp dockerOhne Sudo testen
docker run hello-worldWenn dies ohne sudo und ohne Berechtigungsfehler ausgeführt wird, funktioniert die Konfiguration korrekt.
> Sicherheitswarnung: Die docker Gruppe gewährt Privilegien, die dem root Benutzer entsprechen. Fügen Sie in Produktionsumgebungen nur vertrauenswürdige Benutzer zu dieser Gruppe hinzu.
Schritt 8: Wesentliche Docker-Befehle Referenz
Sobald Docker läuft, sind hier die wichtigsten Befehle, die Sie täglich verwenden werden:
Container-Verwaltung
# List all running containers
docker ps
# List all containers (including stopped ones)
docker ps -a
# Start a stopped container
docker start container_id
# Stop a running container
docker stop container_id
# Remove a container
docker rm container_id
# Remove all stopped containers at once
docker container pruneImage-Verwaltung
# List all locally stored images
docker images
# Pull an image from Docker Hub
docker pull image_name
# Pull a specific version/tag
docker pull image_name:tag
# Remove a local image
docker rmi image_name
# Remove all unused images
docker image prune -aAusführung von Containern
# Run a container interactively
docker run -it image_name /bin/bash
# Run a container in detached (background) mode
docker run -d image_name
# Run a container with port mapping
docker run -d -p 8080:80 image_name
# Run a container with a custom name
docker run -d --name my_container image_nameAnzeigen von Protokollen und Statistiken
# View container logs
docker logs container_id
# Follow live log output
docker logs -f container_id
# View real-time resource usage
docker statsSchritt 9: Bestätigen Sie, dass Docker beim Hochfahren startet
Docker sollte bereits so konfiguriert sein, dass es nach dem Ausführen von systemctl enable docker beim Hochfahren startet. Um dieses Verhalten zu überprüfen oder erneut zu aktivieren:
sudo systemctl enable dockerSo deaktivieren Sie den automatischen Start (z. B. auf einem Entwicklungscomputer, auf dem Docker nicht immer ausgeführt werden muss):
sudo systemctl disable dockerSchritt 10: Erweiterte Konfiguration (Optional)
Docker Compose installieren
Docker Compose ist ein unverzichtbares Tool zum Definieren und Verwalten von Multi-Container-Anwendungen mit einer einfachen YAML-Konfigurationsdatei. Installieren Sie die neueste stabile Version:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-composeÜberprüfen Sie die Installation:
docker-compose --versionMit Docker Compose können Sie ganze Anwendungsstapel — Webserver, Datenbanken, Caches — in einer einzigen docker-compose.yml-Datei definieren und alle mit einem Befehl starten: docker-compose up -d.
Docker-Daemon konfigurieren
Sie können das Verhalten von Docker anpassen, indem Sie die Daemon-Konfigurationsdatei bearbeiten (oder erstellen):
sudo nano /etc/docker/daemon.jsonEin häufiges Konfigurationsbeispiel:
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
},
"storage-driver": "overlay2",
"default-address-pools": [
{"base": "172.17.0.0/16", "size": 24}
]
}Nach dem Bearbeiten der Daemon-Konfiguration starten Sie Docker neu, um die Änderungen anzuwenden:
sudo systemctl restart dockerHäufige Daemon-Einstellungen, die Sie konfigurieren können:
- Log-Treiber und Rotation — Verhindern Sie, dass Container-Logs den gesamten Speicherplatz verbrauchen
- Speichertreiber —
overlay2ist der empfohlene Treiber für CentOS - DNS-Einstellungen — Legen Sie benutzerdefinierte DNS-Server für Container fest
- Registry-Mirrors — Beschleunigen Sie Image-Pulls mit lokalen Mirrors
Firewall-Regeln konfigurieren (CentOS 7)
Wenn Sie firewalld ausführen, müssen Sie möglicherweise den Netzwerkverkehr von Docker zulassen:
sudo firewall-cmd --zone=public --add-masquerade --permanent
sudo firewall-cmd --reloadDie richtige Hosting-Umgebung für Docker wählen
Die Ausführung von Docker in der Produktion erfordert eine zuverlässige, leistungsstarke Server-Umgebung. Hier sind die besten Optionen je nach Ihrem Anwendungsfall:
- VPS Hosting — Ideal für die meisten Docker-Bereitstellungen. Vollständiger Root-Zugriff, skalierbare Ressourcen und kostengünstige Preisgestaltung machen VPS zur bevorzugten Wahl für containerisierte Anwendungen.
- Dedicated Servers — Am besten für Produktionsumgebungen mit hohem Datenverkehr oder wenn Sie maximale CPU-, RAM- und Speicherleistung zum gleichzeitigen Ausführen von Dutzenden von Containern benötigen.
- GPU Hosting — Perfekt für AI/ML-Workloads, die in Docker-Containern ausgeführt werden und GPU-Beschleunigung für Modelltraining oder Inferenz erfordern.
- VPS mit cPanel — Wenn Sie Docker zusammen mit einem benutzerfreundlichen Kontrollpanel zur Verwaltung von Websites und E-Mail benötigen, bietet diese Kombination das Beste aus beiden Welten.
Behebung häufiger Docker-Probleme auf CentOS
Docker Daemon startet nicht
Überprüfen Sie die Systemprotokolle auf Fehlerdetails:
journalctl -u docker --no-pager | tail -50Berechtigung verweigert Fehler
Wenn Sie Got permission denied while trying to connect to the Docker daemon socket sehen, stellen Sie sicher, dass Ihr Benutzer in der docker Gruppe ist und dass Sie sich ab- und wieder angemeldet haben.
Bilder können nicht abgerufen werden
Überprüfen Sie, ob Ihr Server über ausgehenden Internetzugang verfügt und dass DNS korrekt aufgelöst wird:
curl -I https://registry-1.docker.ioContainer-Netzwerkprobleme
Starten Sie Docker neu, um Netzwerkbrücken neu zu initialisieren:
sudo systemctl restart dockerFazit
Sie haben Docker auf CentOS erfolgreich installiert und verfügen nun über eine solide Grundlage für die Arbeit mit Containern. Hier ist eine kurze Zusammenfassung der behandelten Themen:
- ✅ System aktualisiert und Abhängigkeiten installiert
- ✅ Offizielles Docker-Repository hinzugefügt
- ✅ Docker CE installiert und Installation verifiziert
- ✅ Docker für automatischen Start beim Hochfahren konfiguriert
- ✅ Zugriff für Nicht-Root-Benutzer eingerichtet
- ✅ Wesentliche Docker-Befehle erlernt
- ✅ Docker Compose für Multi-Container-Verwaltung installiert
- ✅ Daemon-Konfigurationsoptionen erkundet
Docker auf CentOS eröffnet eine Welt voller Möglichkeiten — von der Ausführung isolierter Entwicklungsumgebungen bis zur Bereitstellung skalierbarer Microservices-Architekturen in der Produktion. Die Containerisierungsfähigkeiten, die Sie hier aufbauen, dienen als Grundlage für fortgeschrittenere Themen wie Kubernetes-Orchestrierung, CI/CD-Pipelines und Cloud-native Anwendungsentwicklung.
Für das beste Docker-Erlebnis stellen Sie sicher, dass Ihre Serverumgebung der Aufgabe gewachsen ist. Erkunden Sie AlexHost VPS-Hosting-Pläne für eine leistungsstarke, zuverlässige und erschwingliche Grundlage für alle Ihre containerisierten Workloads.
bei allen Hosting-Diensten