Wie man den 'invalid reference format'-Fehler beim Herunterladen von Images behebt

DockerDockerBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Docker ist eine leistungsstarke Containerisierungstechnologie (Containerization-Platform), die die Art und Weise, wie Entwickler Anwendungen erstellen, verpacken und bereitstellen, revolutioniert hat. Manchmal können Benutzer jedoch beim Versuch, Docker-Images herunterzuladen, den Fehler 'invalid reference format' (ungültiges Referenzformat) erhalten. In diesem Tutorial erfahren Sie, wie Sie die Namenskonventionen von Docker-Images verstehen, den Fehler 'invalid reference format' diagnostizieren und Docker-Images korrekt herunterladen, um einen reibungslosen Docker-Arbeitsablauf zu gewährleisten.

Verständnis der Namenskonventionen von Docker-Images

Docker-Images werden durch eine spezifische Namenskonvention identifiziert, die es ermöglicht, sie effektiv zu verwalten und zu organisieren. Diese Konvention besteht aus mehreren Komponenten, die Informationen über das Image liefern, wie z. B. das Repository, den Namen des Images und das Tag.

Struktur des Docker-Image-Namens

Ein Docker-Image-Name hat typischerweise die folgende Struktur:

[REGISTRY_HOST[:REGISTRY_PORT]/][USERNAME/]REPOSITORY[:TAG]
  • REGISTRY_HOST: Der Hostname der Docker-Registrierung (Docker Registry), in der das Image gespeichert ist. Wenn nicht angegeben, wird standardmäßig die Docker Hub-Registrierung verwendet.
  • REGISTRY_PORT: Die Portnummer der Docker-Registrierung. Wenn nicht angegeben, wird standardmäßig der Standardport 80 für HTTP oder 443 für HTTPS verwendet.
  • USERNAME: Der Benutzername des Docker-Registrierungsaccounts, der das Repository besitzt.
  • REPOSITORY: Der Name des Repositorys, in dem das Image gespeichert ist.
  • TAG: Die spezifische Version oder Variante des Images. Wenn nicht angegeben, wird standardmäßig das latest-Tag verwendet.

Beispielsweise kann der Image-Name labex/nginx:1.19.0 wie folgt aufgeteilt werden:

  • labex: Der Benutzername des Docker-Registrierungsaccounts, der das Repository besitzt.
  • nginx: Der Name des Repositorys, in dem das Image gespeichert ist.
  • 1.19.0: Die spezifische Version oder Variante des Images.

Herunterladen von Docker-Images

Um ein Docker-Image herunterzuladen, können Sie den Befehl docker pull verwenden, gefolgt vom Image-Name:

docker pull labex/nginx:1.19.0

Dieser Befehl lädt das nginx-Image mit dem Tag 1.19.0 aus dem labex-Repository in der Docker Hub-Registrierung herunter.

Diagnose von 'invalid reference format'-Fehlern

Beim Herunterladen von Docker-Images können Sie gelegentlich den Fehler "invalid reference format" (ungültiges Referenzformat) erhalten. Dieser Fehler tritt typischerweise auf, wenn der Docker-Image-Name nicht der erwarteten Namenskonvention entspricht.

Ursachen von 'invalid reference format'-Fehlern

Es gibt mehrere häufige Gründe, warum Sie den Fehler "invalid reference format" erhalten können:

  1. Falsche Image-Name-Struktur: Der Image-Name folgt nicht dem richtigen Format [REGISTRY_HOST[:REGISTRY_PORT]/][USERNAME/]REPOSITORY[:TAG].
  2. Fehlender oder falscher Registrierungs-Host (Registry Host): Der Registrierungs-Host fehlt oder ist im Image-Name falsch angegeben.
  3. Nicht unterstützte Zeichen im Image-Name: Der Image-Name enthält Zeichen, die in der Docker-Image-Namenskonvention nicht erlaubt sind.
  4. Falsche Tag-Spezifikation: Das im Image-Name angegebene Tag ist nicht gültig oder existiert nicht für das angegebene Repository.

Diagnose von 'invalid reference format'-Fehlern

Um den Fehler "invalid reference format" zu diagnostizieren und zu beheben, können Sie die folgenden Schritte ausführen:

  1. Überprüfen Sie die Struktur des Image-Namens: Stellen Sie sicher, dass der Image-Name dem richtigen Format [REGISTRY_HOST[:REGISTRY_PORT]/][USERNAME/]REPOSITORY[:TAG] entspricht.
  2. Prüfen Sie den Registrierungs-Host: Stellen Sie sicher, dass der Registrierungs-Host korrekt angegeben ist und dass er mit der Registrierung übereinstimmt, in der das Image gespeichert ist.
  3. Untersuchen Sie den Image-Name auf nicht unterstützte Zeichen: Stellen Sie sicher, dass der Image-Name keine Zeichen enthält, die in der Docker-Image-Namenskonvention nicht erlaubt sind.
  4. Überprüfen Sie das Tag: Stellen Sie sicher, dass das im Image-Name angegebene Tag gültig ist und für das angegebene Repository existiert.

Indem Sie diese Schritte befolgen, können Sie die Ursache des Fehlers "invalid reference format" identifizieren und die erforderlichen Maßnahmen ergreifen, um ihn zu beheben.

Korrektes Herunterladen von Docker-Images

Nachdem Sie die Namenskonventionen von Docker-Images verstanden und die "invalid reference format"-Fehler diagnostiziert haben, können Sie nun lernen, wie Sie Docker-Images korrekt herunterladen.

Herunterladen von Images aus der Docker Hub-Registrierung

Das häufigste Szenario ist das Herunterladen von Images aus der Docker Hub-Registrierung. Um ein Image aus der Docker Hub-Registrierung herunterzuladen, können Sie den folgenden Befehl verwenden:

docker pull labex/nginx:1.19.0

Dieser Befehl lädt das nginx-Image mit dem Tag 1.19.0 aus dem labex-Repository in der Docker Hub-Registrierung herunter.

Herunterladen von Images aus anderen Registrierungen

Wenn das Image, das Sie herunterladen möchten, auf einer anderen Registrierung gehostet wird, müssen Sie den Registrierungs-Host (Registry Host) im Image-Name angeben. Beispielsweise, um ein Image aus der LabEx-Privatregistrierung herunterzuladen:

docker pull registry.labex.io/myapp:v2.0.0

In diesem Fall enthält der Image-Name den Registrierungs-Host registry.labex.io und das Repository myapp mit dem Tag v2.0.0.

Herunterladen von Images mit bestimmten Tags

Beim Herunterladen von Docker-Images ist es wichtig, das gewünschte Tag anzugeben, um sicherzustellen, dass Sie die richtige Version des Images erhalten. Wenn Sie kein Tag angeben, lädt Docker automatisch das latest-Tag herunter, was nicht immer die Version sein muss, die Sie möchten.

Beispielsweise, um das nginx-Image mit dem Tag 1.19.0 herunterzuladen:

docker pull labex/nginx:1.19.0

Dies stellt sicher, dass Sie die spezifische Version des nginx-Images erhalten, die Sie benötigen.

Indem Sie diese bewährten Verfahren zum Herunterladen von Docker-Images befolgen, können Sie den "invalid reference format"-Fehler vermeiden und sicherstellen, dass Sie die richtigen Docker-Images für Ihre Anwendung verwenden.

Zusammenfassung

Am Ende dieses Tutorials werden Sie die Namenskonventionen von Docker-Images umfassend verstanden haben, in der Lage sein, den Fehler 'invalid reference format' zu diagnostizieren und zu beheben und die richtige Methode zum Herunterladen von Docker-Images kennen. Mit diesen Kenntnissen können Sie effizienter und effektiver mit Docker arbeiten und Ihre Containerisierungsprozesse optimieren.