Während Sie Ihre Anwendung iterieren, müssen Sie neue Docker-Images in die Docker-Registrierung verschieben. Es stellt sich natürlich die Frage, wie man diese Bilder versioniert. Hier kommen Docker-Tags ins Spiel. Docker-Tags bestehen aus drei Teilen: Der erste Teil ist der Namespace, der zweite Teil ist der Image-Name und im letzten Teil geben Sie die Version an.
Standardmäßig besteht der Docker-Image-Name aus durch Schrägstriche getrennten Namenskomponenten. Mit Docker-Tags können Sie die Bilder zur Verdeutlichung mit Tags versehen. In einfachen Worten enthalten Docker-Tags sehr nützliche Informationen wie die Betriebssystemversion. Dies spielt eine sehr wichtige Rolle im Entwicklungslebenszyklus, da Entwickler diese Tags verwenden, um die Build-Version zu unterscheiden.
Es gibt zwei Arten von Tags: Stable Tags und Unique Tags.
Stabile Tags
Ein stabiles Tag ist ein Tag, das verwendet und wiederverwendet werden kann, um das Basis-Image Ihres Containers zu verwalten. Sie sollten stabile Tags für Bereitstellungen vermeiden, da sie im Laufe der Zeit weiterhin aktualisiert werden. Es gibt zwei Sätze von Stable-Tags: die Haupt- und die Nebenversion:
- :1 - Gibt die Hauptversion an.
- :1.0 - Gibt auch stabile Tags für Version 1 an.0
- :neueste - Gibt die neueste Version der stabilen Tags an.
Einzigartige Tags
Es wird empfohlen, eindeutige Tags für Bereitstellungen zu verwenden, bei denen Sie auf mehreren Knoten skalieren möchten. Einfach ausgedrückt hat jedes Image, das in eine Docker-Registry gepusht wird, ein eindeutiges Tag. Sie können verschiedene Muster verwenden, um eindeutige Tags zu generieren, einschließlich Datum-Zeit-Stempel, Git-Commit, Manifest-Digest und Build-ID.
Dieses Tutorial zeigt Ihnen, was Docker-Tags sind und wie Sie sie verwenden.
Bedarf
- Ein Server, auf dem Linux mit installiertem Docker ausgeführt wird.
- Ein auf Ihrem Server konfiguriertes Root-Passwort.
Einstieg
Vergewissern Sie sich vor dem Start, dass Docker installiert ist, indem Sie den folgenden Befehl ausführen:
Docker-InfosSie sollten alle Informationen zu Docker von diesem Befehl erhalten, wie in der folgenden Ausgabe gezeigt:
Klient:Debug-Modus: false
Server:
Behälter: 0
Laufen: 0
Angehalten: 0
Gestoppt: 0
Bilder: 1
Serverversion: 19.03.12
Speichertreiber: overlay2
Backup-Dateisystem: extfs
Unterstützt d_type: true
Native Overlay-Diff: true
Protokollierungstreiber: json-Datei
Cgroup-Treiber: cgroupfs
Plugins:
Lautstärke: lokal
Netzwerk: Bridge-Host ipvlan macvlan null Overlay
Protokoll: awslogs fluentd gcplogs gelf journald json-Datei lokale Protokolleinträge splunk syslog
Schwarm: inaktiv
Laufzeiten: runc
Standardlaufzeit: runc
Init-Binärdatei: docker-init
Containerversion: 7ad184331fa3e55e52b890ea95e65ba581ae3429
Runc-Version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
Init-Version: fec3683
Sicherheitsoptionen:
Apparmor
seccomp
Profil: Standard
Kernel-Version: 5.4.0-29-generisch
Betriebssystem: Ubuntu 20.04 LTS
Betriebssystemtyp: Linux
Architektur: x86_64
CPUs: 2
Gesamtspeicher: 3.844GiB
Name: ubuntu2004
ID: O35R:5XCI:WZGN:XUYI:IVKN:3QXX:KHMF:U4GT:KT2Y:6PWW:UURQ:HTEF
Docker-Stammverzeichnis: /var/lib/docker
Debug-Modus: false
Registrierung: https://index.Docker.io/v1/
Etiketten:
Experimentell: falsch
Unsichere Register:
127.0.0.0/8
Live-Wiederherstellung aktiviert: false
Docker-Tag-Syntax
Die grundlegende Syntax von Docker-Tags ist unten dargestellt:
Docker-Tag "Bild-ID" Bild/TagOben ist der Begriff „Image-ID“ die 12-stellige Identifikationszeichenfolge des Images, und „tag“ gibt das neu erstellte Versionierungs-Tag an.
Sie können eine bestimmte Version eines Ubuntu-Images mithilfe des Image-Tags aus der Docker Hub-Registrierung ziehen.
Zum Beispiel, um das Ubuntu 18 . zu ziehen.04-Image vom Docker Hub, führen Sie den folgenden Befehl aus:
Docker Pull Ubuntu:18.04Dieser Befehl durchsucht alle Images in der Docker Hub-Registrierung und lädt das Image mit dem Tag 18 . herunter.04, wie unten gezeigt:
18.04: Aus Bibliothek/Ubuntu ziehenf08d8e2a3ba1: Ziehen abgeschlossen
3baa9cb2483b: Ziehen abgeschlossen
94e5ff4c0b15: Ziehen abgeschlossen
1860925334f9: Ziehen abgeschlossen
Zusammenfassung: sha256:05a58ded9a2c792598e8f4aa8ffe300318eac6f294bf4f49a7abae7544918592
Status: Neueres Image für Ubuntu heruntergeladen: 18.04
Docker.io/Bibliothek/ubuntu:18.04
Hier, 18.04 ist das Tag eines Ubuntu-Images.
Wenn Sie kein Tag angeben, wird die neueste Version von Ubuntu heruntergeladen.
So markieren Sie ein Bild
Listen Sie zunächst alle verfügbaren Images in Ihrem Docker-Hostsystem mit dem folgenden Befehl auf:
Docker-BilderSie sollten die folgende Ausgabe sehen, nachdem Sie den obigen Befehl eingegeben haben:
REPOSITORY-TAG BILD-ID ERSTELLTE GRÖSSEUbuntu 18.04 6526a1858e5d vor 3 Wochen 64.2 MB
In der obigen Ausgabe sollten Sie das Ubuntu-Image mit der ID 6526a1858e5d sehen.
Taggen Sie das Ubuntu-Image mit dem Namen nginx mit dem folgenden Befehl:
Docker-Tag 6526a1858e5d ubuntu/nginxJetzt können Sie Ihr neu markiertes Bild mit dem folgenden Befehl auflisten:
Docker-BilderSie sollten Ihr markiertes Bild in der folgenden Ausgabe sehen:
REPOSITORY-TAG BILD-ID ERSTELLTE GRÖSSEUbuntu 18.04 6526a1858e5d vor 3 Wochen 64.2 MB
ubuntu/nginx neueste 6526a1858e5d 3 Wochen vor 64.2 MB
Wenn Sie ein Bild taggen, ohne ein Tag anzugeben, erhält es standardmäßig das neueste Tag.
Fazit
Wie Sie gesehen haben, sind Docker-Tags im Entwicklungslebenszyklus sehr nützlich, da Sie die Version Ihrer Anwendung verwalten und pflegen können. Ich hoffe, Sie haben jetzt genug Verständnis für Docker-Tags.