Kompilowanie i wypychanie obrazów platformy Docker do usługi Azure Container Registry przy użyciu szablonów platformy Docker
Azure DevOps Services
W tym samouczku krok po kroku dowiesz się, jak skonfigurować potok ciągłej integracji w celu utworzenia konteneryzowanej aplikacji. Nowe żądania ściągnięcia wyzwalają potok w celu kompilowania i publikowania obrazów platformy Docker w usłudze Azure Container Registry.
Wymagania wstępne
Konto usługi GitHub. Utwórz bezpłatne konto usługi GitHub, jeśli jeszcze go nie masz.
Organizacja i projekt usługi Azure DevOps. Utwórz nową organizację i/lub nowy projekt, jeśli jeszcze go nie masz.
Konto Azure. Utwórz bezpłatne konto platformy Azure, jeśli jeszcze go nie masz.
Uzyskiwanie kodu
Rozwidlenie lub sklonowanie przykładowej aplikacji pipeline-javascript-docker :
https://github.com/MicrosoftDocs/pipelines-javascript-docker
Tworzenie rejestru kontenerów
Zaloguj się do platformy Azure, a następnie wybierz przycisk Azure Cloud Shell w prawym górnym rogu.
Uruchom następujące polecenia, aby utworzyć grupę zasobów i usługę Azure Container Registry przy użyciu interfejsu wiersza polecenia platformy Azure.
# Create a resource group az group create --name myapp-rg --location eastus # Create a container registry az acr create --resource-group myapp-rg --name mycontainerregistry --sku Basic
Uwaga
Nazwa rejestru kontenerów musi mieć małe litery.
Do utworzenia usługi Azure Container Registry można również użyć internetowego interfejsu użytkownika witryny Azure Portal. Aby uzyskać szczegółowe informacje, zobacz Tworzenie rejestru kontenerów.
Ważne
Aby wdrożyć obraz platformy Docker z usługi Azure Container Registry, musisz włączyć konto użytkownika administratora. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie rejestru kontenerów.
Tworzenie potoku
Zaloguj się do organizacji usługi Azure DevOps i przejdź do projektu.
Wybierz pozycję Potoki, a następnie wybierz pozycję Nowy potok , aby utworzyć nowy potok.
Wybierz pozycję GitHub YAML, a następnie wybierz pozycję Autoryzuj usługę Azure Pipelines , aby zapewnić odpowiednie uprawnienia dostępu do repozytorium.
Może zostać wyświetlony monit o zalogowanie się do usługi GitHub. Jeśli tak, wprowadź swoje poświadczenia usługi GitHub, a następnie wybierz repozytorium z listy repozytoriów.
Na karcie Konfigurowanie wybierz zadanie Docker - Build and push an image to Azure Container Registry (Konfigurowanie — kompilowanie i wypychanie obrazu do usługi Azure Container Registry).
Wybierz subskrypcję platformy Azure, a następnie wybierz pozycję Kontynuuj.
Wybierz rejestr kontenerów z menu rozwijanego, a następnie podaj nazwę obrazu do obrazu kontenera.
Po zakończeniu wybierz pozycję Zweryfikuj i skonfiguruj .
W miarę tworzenia potoku przez usługę Azure Pipelines:
Utwórz połączenie usługi rejestru platformy Docker, aby umożliwić potokowi wypychanie obrazów do rejestru kontenerów.
Wygeneruj plik azure-pipelines.yml , który definiuje potok.
Przejrzyj potok YAML, a następnie wybierz pozycję Zapisz i uruchom , gdy wszystko będzie gotowe.
Dodaj komunikat Commit (Zatwierdzenie), a następnie wybierz pozycję Save and run (Zapisz i uruchom), aby zatwierdzić zmiany i uruchomić potok.
W miarę uruchamiania potoku wybierz zadanie kompilacji, aby obserwować działanie potoku.
Jak tworzymy potok
Potok utworzony w poprzedniej sekcji został wygenerowany na podstawie szablonu kontenera platformy Docker YAML. Etap kompilacji używa zadaniaDocker@2
platformy Docker do kompilowania i wypychania obrazu platformy Docker do rejestru kontenerów.
- stage: Build
displayName: Build and push stage
jobs:
- job: Build
displayName: Build job
pool:
vmImage: $(vmImageName)
steps:
- task: Docker@2
displayName: Build and push an image to container registry
inputs:
command: buildAndPush
repository: $(imageRepository)
dockerfile: $(dockerfilePath)
containerRegistry: $(dockerRegistryServiceConnection)
tags: |
$(tag)
Czyszczenie zasobów
Jeśli nie zamierzasz nadal korzystać z tej aplikacji, możesz usunąć zasoby utworzone w tym samouczku, aby uniknąć naliczania bieżących opłat. Uruchom następujące polecenie, aby usunąć grupę zasobów.
az group delete --name myapp-rg
Powiązane artykuły
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla