Heim >Backend-Entwicklung >Golang >Wie greife ich mit dem Befehl „inspect' auf Docker-Image-Beschriftungen mit Punkten im Namen zu?

Wie greife ich mit dem Befehl „inspect' auf Docker-Image-Beschriftungen mit Punkten im Namen zu?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-14 17:39:02403Durchsuche

How to Access Docker Image Labels with Dots in Their Names Using the `inspect` Command?

Zugriff auf Docker-Image-Beschriftungen mit Punkten in Namen

Der Befehl „inspect“ von Docker bietet eine praktische Möglichkeit, die Beschriftungen eines Container-Images abzurufen. Das Extrahieren von Beschriftungen mit Punkten im Namen mithilfe der Option --format und Go-Vorlagen kann sich jedoch als schwierig erweisen.

Problem:

Das folgende Docker-Image definiert zwei Beschriftungen:

FROM busybox
LABEL foo="bar"
LABEL com.wherever.foo="bang"

Verwenden des Befehls inspect mit dem --Format Option:

$ docker inspect -f '{{ .Config.Labels.foo }}' foo

gibt den Wert für die Bezeichnung „foo“ korrekt zurück. Der Versuch, auf das Etikett mit einem Punkt im Namen zuzugreifen:

$ docker inspect -f '{{ .Config.Labels.com.wherever.foo }}' foo

führt jedoch zu „“.

Lösung:

Um Etiketten mit Punkten im Namen abzurufen, verwenden Sie die Indexfunktion in der Go-Vorlage:

$ docker inspect -f '{{ index .Config.Labels "com.wherever.foo" }}' foo

Dies wird ausgegeben der gewünschte Beschriftungswert, „bang“.

Die Indexfunktion sucht nach beliebigen Zeichenfolgen in der Karte und gibt den entsprechenden Wert zurück, wenn er gefunden wird. Durch Angabe des Labelnamens als zweiten Parameter ruft die Funktion den zugehörigen Wert aus der Labels-Map des Config-Objekts ab.

Das obige ist der detaillierte Inhalt vonWie greife ich mit dem Befehl „inspect' auf Docker-Image-Beschriftungen mit Punkten im Namen zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn