Dies ist ein maschinell übersetzter Text und kann Fehler enthalten!
Docker Engine installieren
Hierinstallieren Sie Docker Engine und das Compose-Plugin auf einem Linux-Server. Sie sind fertig, wenn hello-world antwortet und Compose eine Versionsnummer anzeigt. Arbeiten Sie im Terminal der VM, jeweils ein Befehl nach dem anderen.
Wenn Sie bereits eine funktionierende Installation haben, gehen Sie zu [[Containerbruk Level 1 - Kjor og undersog en container|Einen Container starten und untersuchen]].
Was ist Docker? erklärt Image, Container und Registry. Container und virtuelle Maschinen zeigt die Beziehung zum Linux-VM dar.
Voraussetzungen
Sie benötigen einen Debian- oder Ubuntu-Server in Proxmox und Administratorrechte. Öffnen Sie die Konsole Ihrer eigenen VM und melden Sie sich an. Docker wird innerhalb der VM installiert und verwendet, nicht im Shell-Terminal des Proxmox-Gastwirts. Die gesamte Installation kann über die Konsole durchgeführt werden. Sich von einem lokalen Rechner per 🔐 SSH anzumelden ist ein eigenständiges Thema, das später behandelt werden kann.
Sie müssen mit pwd den aktuellen Ordner anzeigen können, mit ls dessen Inhalt sehen und mit cd den Ordner wechseln. Die CLI-Übung bietet Unterstützung für Terminalarbeit. [[Zugriff Level 1 - Benutzer und Berechtigungen unter Linux|Benutzer und Berechtigungen unter Linux]] erklärt Benutzer und Gruppen; das eigentliche Root-/Sudo-Einrichten steht unten in der Installationsanleitung.
Neu bei Proxmox oder Netzwerkgrundlagen?
[[Serverinstallation Level 2 - VM in Proxmox|🖥️ Serverinstallation - VM in Proxmox]] zeigt Schritt für Schritt, wie man eine VM erstellt und Ubuntu oder Debian installiert. Wenn Sie keinen Zugriff auf Proxmox haben, zeigt [[Serverinstallation Level 1 - Bare Metal|🖫️ Serverinstallation - Bare Metal]], dasselbe direkt auf physischer Hardware. [[Virtualisierung Level 1 - VM-Tutorial|🖫️ Virtualisierung]] ist die Übungsaufgabe, bei der Sie später nachweisen, dass Sie dies eigenständig beherrschen. [[Protokolle Level 1 - Netzwerkprotokolle|🌐 Netzwerkprotokolle]] behandelt IP-Adressen und Ports.
Docker Engine installieren
Beachten Sie die offizielle Installationsanleitung für Docker Engine auf Debian oder Docker Engine auf Ubuntu.
Lesen Sie die Voraussetzungen und verwenden Sie Installation über das apt-Repository für Ihr Betriebssystem. Richten Sie zunächst die Docker-Paketquelle ein und installieren Sie dann Docker Engine sowie das Compose-Plugin wie dort beschrieben.
Lange Befehle ohne Kopieren und Einfügen
Kopieren und Einfügen funktioniert in der Proxmox-Konsole oft nicht, und einige Zeilen im Installationshandbuch sind lang. Tippe eine Zeile nach der anderen ein und vergleiche Zeichen für Zeichen vor dem Drücken von Enter. Fällt anschließend apt update aus, liegt es häufig an einem Tippfehler in der Paketquelle oder einem Netzwerkproblem; siehe „Wenn etwas schiefgeht“.
Debian ohne sudo?
Folge dem [[Serverinstallation Level 1 - Bare Metal|Rezept für Root und Sudo]], bevor du beginnst. Du kannst sudo für den normalen Benutzer installieren oder die Administrationsbefehle als Root in der VM-Konsole ausführen. Als Root lässt du das sudo vor den Befehlen weg.
Installation auf Debian
Die folgenden Befehle wurden der Doku von Docker vom 14. Oktober 2026 entnommen. Falls sie nicht funktionieren, kann es sein, dass Docker sie geändert hat; vergleiche in diesem Fall mit der offiziellen Seite. Wenn Sie Ubuntu verwenden, folgen Sie stattdessen der Anleitung für Ubuntu, da die Adressen anders sind.
Einige Wörter in der Ausgabe von apt stehen auf Schwedisch oder Dänisch, zum Beispiel „Sammanfattning“ und „Fortsätta?“. Das stammt aus der norwegischen Übersetzung von Debian und ist für die Installation ohne Bedeutung.
1. Den Docker-Schlüssel abrufen. Der Schlüssel ermöglicht es apt, zu überprüfen, ob die Pakete tatsächlich von Docker stammen.
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
2. Fügen Sie die Docker-Paketquelle hinzu. Geben Sie die erste Zeile ein und drücken Sie Enter. Das Terminal zeigt vor jeder neuen Zeile ein >, bis Sie EOF eingeben. Danach gibt tee den Inhalt der Datei aus. Dort sollte bei Suites Ihr Debian-Versionsname angezeigt werden, z. B. trixie.
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
Nach sudo apt update sollten Zeilen aus download.docker.com angezeigt werden. Fehlen diese, liegt ein Tippfehler in der Datei vor. Siehe „Wenn etwas schiefgeht“.
3. Docker installieren. Antworten Sie mit J, wenn apt fragt, ob Sie fortfahren möchten.
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Die Animation zeigt ebenfalls sudo docker run hello-world von unten in der Konsole an.
Installation überprüfen:
docker --version
docker compose version
sudo systemctl status docker
sudo docker run hello-world
hello-world lädt ein kleines Image herunter, startet einen Testcontainer und schreibt eine Meldung. Drücken Sie q, wenn systemctl status docker das Ergebnis in einem Pager anzeigt und Sie zur Terminal zurückkehren möchten.
Verwenden Sie bei den folgenden Docker-Befehlen ggf. sudo als Präfix, falls der reguläre Benutzer keine Berechtigungen hat. Falls Sie dem regulären Benutzer über die Gruppe docker Zugriff gewähren möchten, führen Sie Folgendes aus der Sitzung des regulären Benutzers aus. Die Gruppe erteilt Root-gleiche Rechte; tun Sie dies nur für einen Benutzer, der den Übungsserver verwalten soll:
The provided input does not contain any comments (lines starting with # or inline comment markers). It consists solely of an executable command. Therefore, no translation is required, and the code remains unchanged as per your instructions.
sudo usermod -aG docker $USER
Führen Sie dies aus einer Root-Sitzung ohne sudo aus und verwenden Sie usermod -aG docker IhrBenutzername, wobei Sie IhrBenutzername durch Ihren regulären Benutzer ersetzen. $USER in einer Root-Sitzung bezieht sich auf root, nicht auf Ihren regulären Benutzer.
Melden Sie sich ab und wieder an (oder führen Sie newgrp docker aus), damit die Änderung wirksam wird. Bis dahin können Sie vor den Befehlen der nächsten Übungen sudo verwenden.
Prüfpunkt: Docker ist installiert
hello-world sollte Hello from Docker! angezeigt haben und docker compose version sollte eine Version anzeigen. Falls eines der Ergebnisse fehlt, korrigieren Sie die Installation, bevor Sie mit dem Webserver beginnen. Zeigen Sie gerne den Befehl und die Antwort an, wenn Sie Hilfe benötigen.
Wenn die Installation fehlschlägt
| Symptom | Prüfung |
|---|---|
docker oder docker compose nicht gefunden | Dass sowohl Engine als auch das Compose-Plugin gemäß der Anleitung für Ihr Betriebssystem installiert sind. |
permission denied beim Docker-Befehl | Mit sudo versuchen. Gruppenänderungen erfordern eine neue Anmeldung. |
| Der Docker-Dienst läuft nicht | sudo systemctl status docker und die Fehlermeldung lesen, bevor Sie erneut versuchen. |
apt update zeigt Malformed oder Unsupported file an | Die Paketquellenzeile Zeichen für Zeichen mit den Anweisungen von Docker vergleichen. |
NO_PUBKEY oder is not signed | Prüfen, ob der Schlüssel in den richtigen Pfad heruntergeladen wurde und von apt lesbar ist. |
Could not resolve, Failed to fetch, timeout oder dial tcp | Die VM erreicht die Paketquelle oder das Registry nicht. Verwenden Sie [[Fehlerbehebungsmethode Level 1 - Systematische Fehlersuche |
Nächster Schritt
Wenn hello-world die Ausgabe Hello from Docker! angezeigt hat und Compose eine Version anzeigt, fahren Sie mit Starten einer Container und Untersuchung fort. Dort holen Sie sich Nginx und kontrollieren, welcher Container antwortet.
Die Containerübung befindet sich derzeit bei Starten einer Container und Untersuchung.
Die Speicherübungen befinden sich derzeit bei Daten außerhalb des Containers erhalten.


