How2-Tipps

Die wichtigsten Docker-Befehle erklärt

Einsteigerfreundliche Anleitung mit praktischen Beispielen zu den wichtigsten Docker-Befehlen: Container starten, verwalten, Logs lesen, Images bauen und mehr – kompakt und verständlich erklärt.

1 min Lesezeit
Die wichtigsten Docker-Befehle erklärt

Einsteigerfreundliche Übersicht mit praktischen Beispielen

Docker ist ein mächtiges Werkzeug – doch gerade am Anfang kann die Vielzahl an Befehlen überfordern. Dieser Artikel bietet dir eine übersichtliche und verständliche Einführung in die wichtigsten Docker-Kommandos für die tägliche Arbeit. Egal ob du Container startest, Images verwaltest oder Logs prüfst – hier findest du die passenden Befehle mit Beispielen.

1. docker run – Container starten

Der wichtigste Befehl überhaupt: Er startet einen neuen Container.

``bash docker run hello-world ``

Dieser Befehl:

  • lädt das Image hello-world (wenn nicht lokal vorhanden)
  • startet es in einem Container
  • zeigt eine Begrüßungsnachricht
  • Häufig genutzte Optionen:

| Option | Bedeutung | | -------- | ----------------------------------------------------------- | | -d | detached Mode (läuft im Hintergrund) | | -p | Port-Weiterleitung (z. B. -p 8080:80) | | --name | Eigener Name für den Container | | -v | Volumes einbinden (z. B. -v ./html:/usr/share/nginx/html) |

Beispiel:

``bash docker run -d -p 8080:80 --name webserver nginx ``

2. docker ps – Laufende Container anzeigen

Zeigt alle aktuell laufenden Container:

``bash docker ps ``

  • Alle Container (inkl. gestoppter):

``bash docker ps -a ``

3. docker start / docker stop / docker restart

Diese Befehle starten, stoppen oder starten Container neu – anhand ihres Namens oder ihrer ID.

``bash docker start webserver docker stop webserver docker restart webserver ``

4. docker exec – Befehle im Container ausführen

Perfekt, um in einen laufenden Container „hineinzuspringen“:

``bash docker exec -it webserver bash ``

Das öffnet eine interaktive Shell (bash) im Container webserver.

5. docker pull – Image herunterladen

Lädt ein Image vom Docker Hub (oder einem anderen Registry-Server):

``bash docker pull ubuntu docker pull nginx:1.25 ``

6. docker push – Image hochladen

Voraussetzung: Du hast ein Konto auf Docker Hub oder einem eigenen Registry-Server.

``bash docker tag mein-image meinname/mein-image:latest docker push meinname/mein-image:latest ``

7. docker build – Image aus Dockerfile erstellen

Erstellt ein Docker-Image aus einem Dockerfile im aktuellen Verzeichnis:

``bash docker build -t mein-image . ``

  • Option -f erlaubt es, ein anderes Dockerfile zu verwenden.

8. docker rm / docker rmi – Container und Images löschen

Container löschen:

``bash docker rm webserver ``

Mehrere Container auf einmal:

``bash docker rm $(docker ps -a -q) ``

Images löschen:

``bash docker rmi nginx ``

  • Achtung: Container müssen gestoppt sein, bevor du sie löschst.

9. docker logs – Logausgabe eines Containers anzeigen

Sehr hilfreich beim Debuggen:

``bash docker logs webserver ``

  • Mit -f kannst du „live“ mitlesen:

``bash docker logs -f webserver ``

10. docker volume – Volumes verwalten

Volumes ermöglichen persistente Daten, auch wenn der Container gelöscht wird.

``bash docker volume create mein-volume docker volume ls docker volume inspect mein-volume docker volume rm mein-volume ``

Einbinden beim Start:

``bash docker run -v mein-volume:/app/data ubuntu ``

11. docker inspect – Detaillierte Infos anzeigen

Zeigt alle Details zu einem Container oder Image (JSON-Format):

``bash docker inspect webserver ``

12. docker-compose – Mehrere Container verwalten (Bonus)

Mit docker compose (neu) oder docker-compose (alt) kannst du mehrere Container in einem Projekt verwalten.

Starten:

``bash docker compose up -d ``

Stoppen:

``bash docker compose down ``

Fazit

Diese Docker-Befehle bilden das Grundgerüst für deine tägliche Arbeit mit Containern. Sobald du sie beherrschst, kannst du selbst komplexe Container-Umgebungen aufsetzen, debuggen und verwalten.

Tipp: Speichere dir die wichtigsten Befehle in einem Cheat Sheet oder Terminal-Bookmark!