2014-10-20 26 views
6

Tworzę ciągłą strategię wdrażania przy użyciu Docker. Mój kod jest hostowany na Github, a rejestr Docker uruchamia automatyczną kompilację, kiedy popycham do git. Domyślnym ustawieniem jest rozpoczęcie budowania po naciśnięciu, aby opanować i utworzenie obrazu z "najnowszym" znacznikiem. To jest w porządku, ale chcę też móc oznaczać zatwierdzenia w git i tworzyć na ich podstawie obraz. Wygląda na to, że istnieje pewna funkcjonalność w witrynie rejestru Docker, na stronie Edytuj ustawienia automatycznej kompilacji mogę wybrać "tag" dla typu i dostarczyć statyczną nazwę znacznika.Jak mogę utworzyć obraz Docker na podstawie znacznika git w Rejestrze publicznym?

Jak ustawić nazwę tagu Docker tak, jak nazwa tagu Git?

Celem jest umożliwienie oznaczania konkretnych wersji, aby była dostępna historia wersji.

+0

Jakieś opinie na temat tego pytania? – Luc

Odpowiedz

2

Możesz to zrobić w rejestrze Docker, w ustawieniach "Automatycznej kompilacji". Domyślnie tworzy to kompilację o nazwie "najnowsza" w oparciu o gałąź "główny", ale można również dodawać automatyczne kompilacje dla określonych znaczników git. Poniższy rysunek pokazuje odpowiedniego ekranu

+4

Dobrze, ale zamiast tworzyć znaczniki z zakodowanymi nazwami, chciałbym móc "git push --tags" dowolny tag i pokazać go również jako tag obrazu Docker. – remmelt

2

najprostsze rozwiązanie z linii poleceń jest zagnieżdżona komenda git-rev:

docker tag <image> <image>:$(git rev-parse --short HEAD)" 

daje ty np

<image> = myImage >> myImage:67df348