Samouczek: wdrażanie i używanie Azure Container Registry (ACR)
Usługa Azure Container Registry (ACR) to prywatny rejestr obrazów kontenera. Prywatny rejestr kontenerów umożliwia bezpieczne kompilowanie i wdrażanie aplikacji oraz kodu niestandardowego. W tym samouczku (część druga z siedmiu) wdrożysz wystąpienie usługi ACR i wypchniesz do niego obraz kontenera. Omawiane kwestie:
- Tworzenie wystąpienia usługi ACR
- Tagowanie obrazu kontenera na potrzeby usługi ACR
- Przekazywanie obrazu do usługi ACR
- Wyświetlanie obrazów w rejestrze
W kolejnych samouczkach integrujesz wystąpienie usługi ACR z klastrem Kubernetes w usłudze AKS i wdrażasz aplikację z obrazu.
Zanim rozpoczniesz
W poprzednim samouczku utworzono obraz kontenera dla prostej aplikacji do głosowania platformy Azure. Jeśli nie utworzono obrazu aplikacji Azure Voting, wróć do artykułu Samouczek 1: Przygotowywanie aplikacji dla usługi AKS.
Ten samouczek wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.53 lub nowszej. Uruchom polecenie az --version
, aby dowiedzieć się, jaka wersja jest używana. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Tworzenie rejestru Azure Container Registry
Przed utworzeniem usługi ACR potrzebna jest grupa zasobów. Grupa zasobów platformy Azure to logiczny kontener, w którym wdrażasz zasoby platformy Azure i zarządzasz nimi.
- Utwórz grupę zasobów za pomocą polecenia
az group create
.
az group create --name myResourceGroup --location eastus
- Utwórz wystąpienie usługi ACR za
az acr create
pomocą polecenia i podaj własną unikatową nazwę rejestru. Nazwa rejestru musi być unikatowa w obrębie platformy Azure i może zawierać od 5 do 50 znaków alfanumerycznych. W dalszej części tego samouczka wartość<acrName>
zostanie użyta jako symbol zastępczy nazwy rejestru kontenerów. Podstawowa jednostka SKU to zoptymalizowany pod kątem kosztów punkt wejścia do celów programistycznych zapewniający równowagę między przestrzenią dyskową i przepływnością.
az acr create --resource-group myResourceGroup --name <acrName> --sku Basic
Logowanie do rejestru kontenerów
Zaloguj się do usługi ACR przy użyciu az acr login
polecenia i podaj unikatową nazwę nadaną rejestrowi kontenerów w poprzednim kroku.
az acr login --name <acrName>
Polecenie zwraca komunikat Login Succeeded po zakończeniu.
Tagowanie obrazu kontenera
Aby wyświetlić listę bieżących obrazów lokalnych, użyj docker images
polecenia .
docker images
Poniższe przykładowe dane wyjściowe przedstawiają listę bieżących lokalnych obrazów platformy Docker:
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 7 minutes ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
Aby użyć obrazu kontenera azure-vote-front z usługą ACR, musisz oznaczyć obraz adresem serwera logowania rejestru. Tag jest używany do routingu podczas wypychania obrazów kontenerów do rejestru obrazów.
Aby uzyskać adres serwera logowania, użyj az acr list
polecenia i wykonaj zapytanie dotyczące serwera loginServer.
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Następnie oznacz lokalny obraz azure-vote-front adresem acrLoginServer rejestru kontenerów. Aby wskazać wersję obrazu, dodaj wartość :v1 na końcu nazwy obrazu:
docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 <acrLoginServer>/azure-vote-front:v1
Aby sprawdzić, czy tagi są stosowane, uruchom ponownie.docker images
docker images
W poniższych przykładowych danych wyjściowych przedstawiono obraz oznaczony adresem wystąpienia usługi ACR i numerem wersji:
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 16 minutes ago 944MB
mycontainerregistry.azurecr.io/azure-vote-front v1 84b41c268ad9 16 minutes ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
Wypychanie obrazów do rejestru
Wypchnij obraz azure-vote-front do wystąpienia usługi ACR przy użyciu docker push
polecenia . Upewnij się, że podaj własny adres acrLoginServer dla nazwy obrazu.
docker push <acrLoginServer>/azure-vote-front:v1
Wypchnięcie obrazu do usługi ACR może potrwać kilka minut.
Wyświetlanie listy obrazów w rejestrze
Aby zwrócić listę obrazów wypchniętych do wystąpienia usługi ACR, użyj az acr repository list
polecenia , podając własne <acrName>
polecenie .
az acr repository list --name <acrName> --output table
Poniższe przykładowe dane wyjściowe wyświetlają obraz azure-vote-front jako dostępny w rejestrze:
Result
----------------
azure-vote-front
Aby wyświetlić tagi dla określonego obrazu, użyj az acr repository show-tags
polecenia .
az acr repository show-tags --name <acrName> --repository azure-vote-front --output table
Poniższe przykładowe dane wyjściowe przedstawiają obraz v1 otagowany w poprzednim kroku:
Result
--------
v1
Następne kroki
W tym samouczku utworzono usługę ACR i wypchnięliśmy obraz do użycia w klastrze usługi AKS. W tym samouczku omówiono:
- Tworzenie wystąpienia usługi ACR
- Tagowanie obrazu kontenera na potrzeby usługi ACR
- Przekazywanie obrazu do usługi ACR
- Wyświetlanie obrazów w rejestrze
W następnym samouczku dowiesz się, jak wdrożyć klaster Kubernetes na platformie Azure.