Tworzenie kontenerów i zarządzanie nimi za pomocą zadań
Zadania usługi Azure Container Registry (ACR) to zestaw funkcji, które:
- Tworzenie obrazów kontenerów opartych na chmurze dla platform, takich jak Linux, Windows i Advanced RISC Machines (Arm).
- Rozszerzanie wczesnych części cyklu tworzenia aplikacji do chmury przy użyciu kompilacji obrazu kontenera na żądanie.
- Włącz automatyczne kompilacje wyzwalane przez aktualizacje kodu źródłowego, aktualizacje obrazu podstawowego kontenera lub czasomierze.
Scenariusze zadań
Usługa ACR Tasks obsługuje kilka scenariuszy tworzenia i obsługi obrazów kontenerów oraz innych artefaktów.
Szybkie zadanie — kompilowanie i wypychanie pojedynczego obrazu kontenera do rejestru kontenerów na żądanie na platformie Azure bez konieczności lokalnej instalacji aparatu platformy Docker. Pomyśl ,
docker build
docker push
w chmurze.Zadania wyzwalane automatycznie — włącz co najmniej jeden wyzwalacz w celu utworzenia obrazu:
- Wyzwalanie aktualizacji kodu źródłowego
- Wyzwalanie przy aktualizacji obrazu podstawowego
- Wyzwalanie zgodnie z harmonogramem
Zadanie wieloetapowe — rozszerzanie możliwości kompilowania i wypychania pojedynczego obrazu usługi ACR Tasks przy użyciu wieloetapowych, wielokontenerowych przepływów pracy.
Każde zadanie usługi ACR ma skojarzony kontekst kodu źródłowego — lokalizację zestawu plików źródłowych używanych do tworzenia obrazu kontenera lub innego artefaktu. Przykładowe konteksty obejmują repozytorium Git lub lokalny system plików.
Szybkie zadanie
Cykl tworzenia pętli wewnętrznej to iteracyjny proces pisania kodu, kompilowania i testowania aplikacji przed zatwierdzeniem kontroli źródła. To naprawdę początek zarządzania cyklem życia kontenera.
Przed zatwierdzeniem pierwszego wiersza kodu funkcja szybkiego zadania usługi ACR Tasks może zapewnić zintegrowane środowisko programistyczne, odciążając kompilacje obrazu kontenera na platformę Azure. Za pomocą szybkich zadań możesz zweryfikować automatyczne definicje kompilacji i przechwycić potencjalne problemy przed zatwierdzeniem kodu.
Za pomocą znanego docker build
formatu polecenie az acr build w interfejsie wiersza polecenia platformy Azure przyjmuje kontekst (zestaw plików do skompilowania), wysyła go do usługi ACR Tasks, a domyślnie wypycha utworzony obraz do rejestru po zakończeniu.
Wyzwalanie zadania przy aktualizacji kodu źródłowego
Wyzwalanie kompilacji obrazu kontenera lub zadania wieloetapowego w przypadku zatwierdzenia kodu lub wykonania lub zaktualizowania żądania ściągnięcia do repozytorium Git w usłudze GitHub lub Azure DevOps Services. Na przykład skonfiguruj zadanie kompilacji za pomocą polecenia interfejsu wiersza polecenia az acr task create
platformy Azure, określając repozytorium Git i opcjonalnie gałąź i plik Dockerfile. Gdy zespół aktualizuje kod w repozytorium, utworzony element webhook usługi ACR Tasks wyzwala kompilację obrazu kontenera zdefiniowanego w repozytorium.
Wyzwalanie przy aktualizacji obrazu podstawowego
Zadanie usługi ACR można skonfigurować tak, aby śledzić zależność od obrazu podstawowego podczas kompilowania obrazu aplikacji. Po wypchnięciu zaktualizowanego obrazu podstawowego do rejestru lub zaktualizowaniu obrazu podstawowego w publicznym repozytorium, takim jak w usłudze Docker Hub, usługa ACR Tasks może automatycznie kompilować wszystkie obrazy aplikacji na jego podstawie.
Planowanie zadania
Opcjonalnie zaplanuj zadanie, konfigurując co najmniej jeden wyzwalacz czasomierza podczas tworzenia lub aktualizowania zadania. Planowanie zadania jest przydatne w przypadku uruchamiania obciążeń kontenerów zgodnie ze zdefiniowanym harmonogramem lub uruchamiania operacji konserwacji lub testów na obrazach wypychanych regularnie do rejestru.
Zadania wieloetapowe
Zadania wieloetapowe zdefiniowane w pliku YAML określają poszczególne operacje kompilacji i wypychania obrazów kontenerów lub innych artefaktów. Mogą one również definiować wykonanie jednego lub kilku kontenerów, z każdym krokiem używającym kontenera jako jego środowiska wykonawczego. Można na przykład utworzyć zadanie wieloetapowe, które automatyzuje następujące czynności:
- Tworzenie obrazu aplikacji internetowej
- Uruchamianie kontenera aplikacji internetowej
- Tworzenie obrazu testowego aplikacji internetowej
- Uruchamianie kontenera testowego aplikacji internetowej, który wykonuje testy względem uruchomionego kontenera aplikacji
- Jeśli testy przejdą, skompiluj pakiet archiwum pakietu archiwum pakietu Helm
helm upgrade
Wykonywanie przy użyciu nowego pakietu archiwum pakietu helm chart
Platformy obrazów
Domyślnie usługa ACR Tasks tworzy obrazy dla systemu operacyjnego Linux i architektury amd64. Określ tag do --platform
kompilowania obrazów systemu Windows lub obrazów systemu Linux dla innych architektur. Określ system operacyjny i opcjonalnie obsługiwaną architekturę w formacie systemu operacyjnego/architektury (na przykład --platform Linux/arm
). W przypadku architektur arm opcjonalnie określ wariant w formacie OS/architecture/variant (na przykład --platform Linux/arm64/v8
):
System operacyjny | Architektura |
---|---|
Linux | AMD64 Ramię Arm64 386 |
Windows | AMD64 |