Zum Inhalt springen

Docker/pull

Aus Foxwiki

Docker/pull - Image aus dem Container-Register in den lokalen Speicher laden

Beschreibung

docker pull lädt das Container-Image aus dem Register in den lokalen Cache unter dem Namen, Tag oder Digest

  • Standardmäßig ist die Quelle Docker Hub (docker.io).
  • Ohne Tag wird :latest verwendet.
  • Für private Register ist eine Authentifizierung erforderlich (docker login).
  • Sie können digest: name@sha256:<digest> für eine exakte Übereinstimmung angeben.
  • Es werden nur fehlende Layer heruntergeladen.
  • Die Integrität wird anhand von Hashes überprüft.

Verwendung des Befehls

docker pull oder docker image pull
docker image pull [OPTIONS] NAME[:TAG|@DIGEST]
Image beziehen

Ohne Tag wird standardmäßig das Image :latest geladen

docker pull ubuntu
Version angeben
docker pull ubuntu:24.04
  • Das Tag ist für den Menschen bequem zu verwenden, kann jedoch im CI/CD-Prozess schwanken.
  • Für eine genaue Reproduzierbarkeit der Version ist es besser, das Image anhand des Digests herunterzuladen.
Image per Digest beziehen
  • Um den Digest eines bestimmten Images zu erfahren, muss das Image heruntergeladen werden:
docker pull ubuntu:24.04

Um den Digest eines bestimmten Images zu erfahren, muss das Image heruntergeladen werden:

$ docker pull ubuntu:24.04

24.04: Pulling from library/ubuntu
125a6e411906: Pull complete
Digest: sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30
Status: Downloaded newer image for ubuntu:24.04
docker.io/library/ubuntu:24.04
  • Docker gibt beim Pushen in eine Registry auch den Digest eines Images aus.
  • Eine weitere Möglichkeit, einen Image-Digest zu erhalten, ist die Verwendung von inspect:
docker buildx imagetools inspect nginx:1.27 | grep "Digest"
Digest:    sha256:66460d557b25769b102175144d538d88219c077c678a49af4afca6fbfc1b5252

Um das Ubuntu-Image mit Digest herunterzuladen, wird der folgende Befehl verwendet:

docker pull ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30

Pull aus einer anderen Registry

Standardmäßig werden Docker-Images aus dem Docker Hub abgerufen.

  • Sie können auch manuell den Pfad zum Verzeichnis angeben, aus dem die Images extrahiert werden sollen

Der folgende Befehl ruft das Bild testing/test-image aus der lokalen Registrierung ab, die auf Port 5000 (myregistry.local:5000) lauscht:

docker image pull myregistry.local:5000/testing/test-image
  • Der Protokollspezifizierer wird im Befehl docker pull nicht angegeben.
  • Standardmäßig wird HTTPS verwendet, mit Ausnahme von localhost.


Pull-Befehl für ein Repository mit mehreren Images (-a, --all-tags)

Standardmäßig ruft „docker pull“ ein einzelnes Image aus der Registry ab. Ein Repository kann mehrere Images enthalten.

  • Um alle Images aus einem Repository abzurufen, geben Sie bei der Verwendung von „docker pull“ die Option „-a“ (oder „--all-tags“) an.
  • Nach Abschluss des Downloads verwenden Sie den Befehl docker image ls (oder dessen Kurzform docker images), um die heruntergeladenen Images anzuzeigen.
$ docker image ls --filter reference=ubuntu
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
ubuntu       22.04     8a3cdc4d1ad3   3 weeks ago    77.9MB
ubuntu       jammy     8a3cdc4d1ad3   3 weeks ago    77.9MB
ubuntu       24.04     35a88802559d   6 weeks ago    78.1MB
ubuntu       latest    35a88802559d   6 weeks ago    78.1MB
ubuntu       noble     35a88802559d   6 weeks ago    78.1MB

Installation

Aufruf

Optionen

Unix GNU Beschreibung
-a --all-tags Laden Sie alle getaggten Images im Repository herunter.
--disable-content-trust Image-Überprüfung überspringen
--platform Plattform festlegen, wenn Server plattformübergreifend einsetzbar ist
-q --quiet Ausführliche Ausgabe unterdrücken


Anhang

Siehe auch



Dokumentation

Projekt