Samouczek: wdrażanie usługi Azure Container Registry i korzystanie z niejTutorial: Deploy and use Azure Container Registry

Usługa Azure Container Registry (ACR) to prywatny rejestr obrazów kontenera.Azure Container Registry (ACR) is a private registry for container images. Prywatny rejestr kontenerów umożliwia bezpieczne tworzenie i wdrażanie aplikacji oraz niestandardowego kodu.A private container registry lets you securely build and deploy your applications and custom code. W tym samouczku (część druga z siedmiu) wdrożysz wystąpienie usługi ACR i wypchniesz do niego obraz kontenera.In this tutorial, part two of seven, you deploy an ACR instance and push a container image to it. Omawiane kwestie:You learn how to:

  • Tworzenie wystąpienia usługi Azure Container RegistryCreate an Azure Container Registry (ACR) instance
  • Tagowanie obrazu kontenera na potrzeby usługi ACRTag a container image for ACR
  • Przekazywanie obrazu do usługi ACRUpload the image to ACR
  • Wyświetlanie obrazów w rejestrzeView images in your registry

W dodatkowych samouczkach to wystąpienie usługi ACR zostanie zintegrowane z klastrem Kubernetes w usłudze AKS, a aplikacja zostanie wdrożona na podstawie obrazu.In additional tutorials, this ACR instance is integrated with a Kubernetes cluster in AKS, and an application is deployed from the image.

Przed rozpoczęciemBefore you begin

W poprzednim samouczku utworzono obraz kontenera na potrzeby prostej aplikacji do głosowania platformy Azure.In the previous tutorial, a container image was created for a simple Azure Voting application. Jeśli obraz aplikacji do głosowania platformy Azure nie został utworzony, wróć do artykułu Samouczek 1 — Tworzenie obrazów kontenerów.If you have not created the Azure Voting app image, return to Tutorial 1 – Create container images.

Ten samouczek wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.53 lub nowszej.This tutorial requires that you're running the Azure CLI version 2.0.53 or later. Uruchom polecenie az --version, aby dowiedzieć się, jaka wersja jest używana.Run az --version to find the version. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.If you need to install or upgrade, see Install Azure CLI.

Tworzenie rejestru Azure Container RegistryCreate an Azure Container Registry

Aby utworzyć rejestr Azure Container Registry, należy najpierw mieć grupę zasobów.To create an Azure Container Registry, you first need a resource group. Grupa zasobów platformy Azure to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi.An Azure resource group is a logical container into which Azure resources are deployed and managed.

Utwórz grupę zasobów za pomocą polecenia az group create.Create a resource group with the az group create command. W poniższym przykładzie grupa zasobów o nazwie myResourceGroup zostanie utworzona w regionie eastus:In the following example, a resource group named myResourceGroup is created in the eastus region:

az group create --name myResourceGroup --location eastus

Utwórz wystąpienie usługi Azure Container Registry przy użyciu polecenia az acr create i podaj własną nazwę rejestru.Create an Azure Container Registry instance with the az acr create command and provide your own registry name. Nazwa rejestru musi być unikatowa w obrębie platformy Azure i może zawierać od 5 do 50 znaków alfanumerycznych.The registry name must be unique within Azure, and contain 5-50 alphanumeric characters. W dalszej części tego samouczka wartość <acrName> zostanie użyta jako symbol zastępczy nazwy rejestru kontenerów.In the rest of this tutorial, <acrName> is used as a placeholder for the container registry name. Podaj własną, unikatową nazwę rejestru.Provide your own unique registry name. 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ą.The Basic SKU is a cost-optimized entry point for development purposes that provides a balance of storage and throughput.

az acr create --resource-group myResourceGroup --name <acrName> --sku Basic

Logowanie do rejestru kontenerówLog in to the container registry

Aby użyć wystąpienia usługi ACR, należy się najpierw zalogować.To use the ACR instance, you must first log in. Użyj polecenia az acr login i podaj unikatową nazwę nadaną rejestrowi kontenerów w poprzednim kroku.Use the az acr login command and provide the unique name given to the container registry in the previous step.

az acr login --name <acrName>

Polecenie zwraca komunikat o pomyślnym zalogowaniu po zakończeniu.The command returns a Login Succeeded message once completed.

Tagowanie obrazu konteneraTag a container image

Aby wyświetlić listę bieżących obrazów lokalnych, użyj polecenia docker images:To see a list of your current local images, use the docker images command:

$ docker images

Powyższe dane wyjściowe polecenia pokazują listę bieżących obrazów lokalnych:The above command output shows list of your current local images:

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
tiangolo/uwsgi-nginx-flask                     python3.6           a16ce562e863        6 weeks ago         944MB

Aby użyć obrazu kontenera azure-vote-front z usługą ACR, obraz musi być otagowany za pomocą adresu serwera logowania rejestru.To use the azure-vote-front container image with ACR, the image needs to be tagged with the login server address of your registry. Ten tag jest używany na potrzeby kierowania podczas wypychania obrazów kontenerów do rejestru obrazów.This tag is used for routing when pushing container images to an image registry.

Aby uzyskać adres serwera logowania, użyj polecenia az acr list i wykonaj zapytanie dotyczące wartości loginServer w następujący sposób:To get the login server address, use the az acr list command and query for the loginServer as follows:

az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table

Teraz Oznacz lokalny obraz z systemem Azure — do głosowania — z adresem acrLoginServer rejestru kontenerów.Now, tag your local azure-vote-front image with the acrLoginServer address of the container registry. Aby wskazać wersję obrazu, dodaj wartość :v1 na końcu nazwy obrazu:To indicate the image version, add :v1 to the end of the image name:

docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 <acrLoginServer>/azure-vote-front:v1

Aby sprawdzić, czy tagi zostały zastosowane, ponownie uruchom polecenie docker images.To verify the tags are applied, run docker images again.

$ docker images

Obraz jest tagowany za pomocą adresu wystąpienia usługi ACR i numeru wersji.An image is tagged with the ACR instance address and a version number.

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
tiangolo/uwsgi-nginx-flask                      python3.6           a16ce562e863        6 weeks ago         944MB

Wypychanie obrazów do rejestruPush images to registry

Po skompilowaniu i otagowaniu obrazu azure-vote-front możesz wypchnąć go do wystąpienia usługi ACR.With your image built and tagged, push the azure-vote-front image to your ACR instance. Użyj polecenia docker push i podaj własny adres acrLoginServer na potrzeby nazwy obrazu w następujący sposób:Use docker push and provide your own acrLoginServer address for the image name as follows:

docker push <acrLoginServer>/azure-vote-front:v1

Wypchnięcie obrazu do usługi ACR może potrwać kilka minut.It may take a few minutes to complete the image push to ACR.

Wyświetlanie listy obrazów w rejestrzeList images in registry

Aby zwrócić listę obrazów, które zostały wypchnięte do wystąpienia usługi ACR, użyj polecenia az acr repository list.To return a list of images that have been pushed to your ACR instance, use the az acr repository list command. Podaj własną nazwę <acrName> w następujący sposób:Provide your own <acrName> as follows:

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:The following example output lists the azure-vote-front image as available in the registry:

Result
----------------
azure-vote-front

Aby wyświetlić tagi dla określonego obrazu, użyj polecenia az acr repository show-tags w następujący sposób:To see the tags for a specific image, use the az acr repository show-tags command as follows:

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:The following example output shows the v1 image tagged in a previous step:

Result
--------
v1

Masz teraz obraz kontenera przechowywany w prywatnym wystąpieniu usługi Azure Container Registry.You now have a container image that is stored in a private Azure Container Registry instance. W kolejnym samouczku ten obraz zostanie wdrożony z usługi ACR do klastra Kubernetes.This image is deployed from ACR to a Kubernetes cluster in the next tutorial.

Następne krokiNext steps

W tym samouczku utworzono usługę Azure Container Registry oraz wypchnięto obraz w celu użycia w klastrze usługi AKS.In this tutorial, you created an Azure Container Registry and pushed an image for use in an AKS cluster. W tym samouczku omówiono:You learned how to:

  • Tworzenie wystąpienia usługi Azure Container RegistryCreate an Azure Container Registry (ACR) instance
  • Tagowanie obrazu kontenera na potrzeby usługi ACRTag a container image for ACR
  • Przekazywanie obrazu do usługi ACRUpload the image to ACR
  • Wyświetlanie obrazów w rejestrzeView images in your registry

Przejdź do kolejnego samouczka, aby dowiedzieć się, jak wdrażać klaster Kubernetes na platformie Azure.Advance to the next tutorial to learn how to deploy a Kubernetes cluster in Azure.