Podczas iteracji w aplikacji będziesz musiał przesłać nowe obrazy Dockera do rejestru Docker. Powstaje naturalne pytanie, jak wersjonować te obrazy. W tym miejscu pojawiają się tagi Dockera. Tagi Dockera składają się z trzech części: pierwsza część to przestrzeń nazw, druga to nazwa obrazu, a ostatnia to miejsce, w którym określasz wersję.
Domyślnie nazwa obrazu Docker składa się z komponentów nazw oddzielonych ukośnikiem. Tagi Dockera umożliwiają oznaczanie obrazów w celu wyjaśnienia. W prostych słowach tagi Dockera zawierają bardzo przydatne informacje, takie jak wersja systemu operacyjnego. Odgrywa to bardzo ważną rolę w cyklu rozwoju, ponieważ programiści używają tych tagów do rozróżnienia wersji kompilacji.
Istnieją dwa rodzaje tagów: tagi stabilne i tagi unikalne.
Stabilne Tagi
Stabilny tag to tag, którego można użyć i ponownie wykorzystać do utrzymania podstawowego obrazu Twojego kontenera. Należy unikać stabilnych tagów dla wdrożeń, ponieważ z czasem będą one otrzymywać aktualizacje. Istnieją dwa zestawy stabilnych tagów: wersja główna i podrzędna:
- :1 - Określa główną wersję.
- :1.0 - Określa również stabilne znaczniki dla wersji 1.0
- :najnowszy - Określa najnowszą wersję stabilnych tagów.
Unikalne tagi
Zaleca się używanie unikalnych tagów w przypadku wdrożeń, w których chcesz skalować na wielu węzłach. Mówiąc prościej, każdy obraz przesłany do rejestru Docker ma unikalny tag. Do generowania unikalnych tagów można użyć kilku wzorców, w tym znacznika daty i godziny, zatwierdzenia Git, podsumowania manifestu i identyfikatora kompilacji.
Ten samouczek pokazuje, czym są tagi Dockera i jak ich używać.
Wymagania
- Serwer z systemem Linux z zainstalowanym Dockerem.
- Hasło roota skonfigurowane na twoim serwerze.
Pierwsze kroki
Przed rozpoczęciem upewnij się, że Docker jest zainstalowany, uruchamiając następujące polecenie:
informacje o oknie dokowanymZ tego polecenia powinieneś uzyskać wszystkie informacje o Dockerze, jak pokazano w następującym pliku wyjściowym:
Klient:Tryb debugowania: fałszywy
Serwer:
Kontenery: 0
Bieganie: 0
Wstrzymane: 0
Zatrzymany: 0
Obrazy: 1
Wersja serwerowa: 19.03.12
Sterownik pamięci masowej: nakładka2
Tworzenie kopii systemu plików: extfs
Obsługuje d_type: prawda
Natywna różnica nakładki: prawda
Logowanie sterownika: json-file
Sterownik Cgroup: cgroupfs
Wtyczki:
Głośność: lokalna
Sieć: host mostu ipvlan macvlan zerowa nakładka
Log: awslogs fluentd gcplogs gelf journaled plik json lokalne logowanie splunk syslog
Rój: nieaktywny
Czasy pracy: runc
Domyślne środowisko wykonawcze: runc
Init Binary: docker-init
wersja kontenerowa: 7ad184331fa3e55e52b890ea95e65ba581ae3429
wersja runc: dc9208a3303feef5b3839f4323d9beb36df0a9dd
wersja początkowa: fec3683
Opcje ochrony:
ubiór
seccomp
Profil: domyślny
Wersja jądra: 5.4.0-29-ogólne
System operacyjny: Ubuntu 20.04 LTS
OSType: linux
Architektura: x86_64
Procesory: 2
Całkowita pamięć: 3.844GiB
Nazwa: ubuntu2004
ID: O35R:5XCI:WZGN:XUYI:IVKN:3QXX:KHMF:U4GT:KT2Y:6PWW:UURQ:HTEF
Katalog główny dockera: /var/lib/docker
Tryb debugowania: fałszywy
Rejestr: https://indeks.doker.io/v1/
Etykiety:
Eksperymentalne: fałszywe
Niezabezpieczone rejestry:
127.0.0.0/8
Włączone przywracanie na żywo: fałsz
Składnia znacznika Docker
Podstawowa składnia tagów Docker jest pokazana poniżej:
tag dockera „identyfikator obrazu” obraz/tagPowyżej termin „identyfikator obrazu” to 12-znakowy ciąg identyfikacyjny obrazu, a „tag” określa nowo utworzony tag wersjonowania.
Możesz pobrać określoną wersję obrazu Ubuntu z rejestru Docker Hub za pomocą tagu obrazu.
Na przykład, aby wyciągnąć Ubuntu 18.04 obraz z Docker Hub, uruchom następujące polecenie:
docker pull ubuntu: 18.04To polecenie przeszuka wszystkie obrazy w rejestrze Docker Hub i pobierze obraz z tagiem 18.04, jak pokazano poniżej:
18.04: Wyciąganie z biblioteki/ubuntuf08d8e2a3ba1: Ciągnięcie zakończone
3baa9cb2483b: Ciągnięcie zakończone
94e5ff4c0b15: Ciągnięcie zakończone
18609253334f9: Ciągnięcie zakończone
Streszczenie: sha256:05a58ded9a2c792598e8f4aa8ffe300318eac6f294bf4f49a7abae7544918592
Status: Pobrano nowszy obraz dla ubuntu:18.04
doker.io/biblioteka/ubuntu:18.04
Tutaj, 18.04 to znacznik obrazu Ubuntu.
Jeśli nie podasz żadnego tagu, zostanie pobrana najnowsza wersja Ubuntu.
Jak oznaczyć obraz?
Najpierw wypisz wszystkie dostępne obrazy w systemie hosta platformy Docker za pomocą następującego polecenia:
obrazy dokowanePo wprowadzeniu powyższego polecenia powinieneś zobaczyć następujące dane wyjściowe:
REPOZYTORIUM IDENTYFIKATOR OBRAZU UTWORZONY ROZMIARubuntu 18.04 6526a1858e5d 3 tygodnie temu 64.2MB
Na powyższym wyjściu powinieneś zobaczyć obraz Ubuntu o identyfikatorze 6526a1858e5d.
Oznacz obraz Ubuntu nazwą nginx, używając następującego polecenia:
docker tag 6526a1858e5d ubuntu/nginxTeraz możesz wyświetlić listę nowo oznakowanego obrazu za pomocą następującego polecenia:
obrazy dokowanePowinieneś zobaczyć swój otagowany obraz w następującym wyniku:
REPOZYTORIUM TAG ID UTWORZONEGO OBRAZU ROZMIARubuntu 18.04 6526a1858e5d 3 tygodnie temu 64.2MB
ubuntu/nginx najnowszy 6526a1858e5d 3 tygodnie temu 64.2MB
Jeśli oznaczysz obraz bez określenia tagu, domyślnie zostanie mu nadany najnowszy tag.
Wniosek
Jak zauważyłeś, tagi Dockera są bardzo przydatne w cyklu rozwoju, pozwalając Ci zarządzać i utrzymywać wersję Twojej aplikacji. Mam nadzieję, że masz teraz wystarczającą wiedzę na temat tagów Docker.