Einführung in Docker-Images
Docker-Images sind die Grundlage für Docker-Container, die wiederum die Bausteine von auf Docker basierenden Anwendungen sind. Ein Docker-Image ist eine schreibgeschützte Vorlage, die eine Reihe von Anweisungen zum Erstellen eines Docker-Containers enthält. Diese Anweisungen umfassen das Betriebssystem, die Software, die Bibliotheken und die Abhängigkeiten, die zum Ausführen einer Anwendung erforderlich sind.
Docker-Images werden in einer Docker-Registrierung (Docker registry) gespeichert, die ein zentrales Repository für Docker-Images ist. Die beliebteste Docker-Registrierung ist Docker Hub, das eine riesige Sammlung öffentlicher und offizieller Docker-Images hostet.
Um Docker-Images zu verstehen, lassen Sie uns die wichtigsten Konzepte untersuchen:
Was ist ein Docker-Image?
Ein Docker-Image ist ein leichtgewichtiges, eigenständiges, ausführbares Paket, das alles enthält, was zum Ausführen einer Anwendung benötigt wird: den Code, die Laufzeitumgebung, Systemwerkzeuge, Bibliotheken und Einstellungen. Docker-Images sind die Grundlage für die Erstellung von Docker-Containern.
Docker-Image-Layer
Docker-Images werden aus einer Reihe von Layern aufgebaut. Jeder Layer repräsentiert eine Anweisung in der Dockerfile des Images. Wenn Sie die Dockerfile ändern und das Image neu erstellen, werden nur die Layer neu erstellt, die sich geändert haben. Dies macht das Erstellen von Images effizient und hilft, die Größe von Docker-Images zu minimieren.
Herunterladen und Ausführen von Docker-Images
Sie können Docker-Images aus einer Registrierung, wie z. B. Docker Hub, mit dem Befehl docker pull
herunterladen. Sobald Sie ein Image haben, können Sie daraus einen Container mit dem Befehl docker run
erstellen.
## Pull the Ubuntu 22.04 image from Docker Hub
docker pull ubuntu:22.04
## Run a container based on the Ubuntu 22.04 image
docker run -it ubuntu:22.04 /bin/bash
Dies wird einen neuen Container basierend auf dem Ubuntu 22.04-Image starten und Ihnen eine Shell innerhalb des Containers geben.
Namenskonventionen für Docker-Images
Docker-Images folgen einer bestimmten Namenskonvention: [registry-host[:port]]/[username/]name[:tag]
. Das häufigste Format ist name:tag
, wobei name
der Name des Images und tag
die Version oder Variante des Images ist.