Självstudie: Distribuera och använda en Azure Container Registry

En Azure Container Registry (ACR) är ett privat register för containeravbildningar. Med ett privat containerregister kan du skapa och distribuera dina program och anpassad kod på ett säkert sätt. I den här självstudien, del två av sju, ska du distribuera en ACR-instans och skicka en containeravbildning till den. Du lär dig följande:

  • Skapa en ACR-instans (Azure Container Registry)
  • Tagga en containeravbildning för ACR
  • ladda upp avbildningen till ACR.
  • Visa avbildningar i registret

I senare självstudier är den här ACR-instansen integrerad med ett Kubernetes-kluster i Azure Kubernetes Service (AKS) på Azure Stack HCI och Windows Server, och ett program distribueras från avbildningen.

Innan du börjar

I den föregående självstudien beskrivs hur du skapar en containeravbildning för ett enkelt Azure Voting-program. Om du inte har skapat appavbildningen för Azure Voting återgår du till Självstudie 1 – skapa containeravbildningar.

Den här självstudien kräver att du kör Azure CLI version 2.0.53 eller senare. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.

Skapa ett Azure Container Registry

Om du vill skapa en Azure Container Registry behöver du först en resursgrupp. En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.

Skapa en resursgrupp med kommandot az group create. I följande exempel skapas en resursgrupp med namnet myResourceGroup i regionen eastus:

az group create --name myResourceGroup --location eastus

Skapa en Azure Container Registry-instans med kommandot az acr create och ange ett registernamn. Registernamnet måste vara unikt i Azure och innehålla 5–50 alfanumeriska tecken. I resten av den här självstudien används <acrName> som platshållare för namnet på containerregistret. Ange ditt eget unika registernamn. Den grundläggande SKU:n är en kostnadsoptimerad startpunkt för utvecklingsändamål som ger en bra balans mellan lagring och dataflöde.

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

Logga in till containerregistret

För att använda ACR-instansen måste du först logga in. Använd kommandot az acr login och ange det unika namn som du gav containerregistret i föregående steg.

az acr login --name <acrName>

Kommandot returnerar ett meddelande om att inloggningen lyckades när den har slutförts.

Tagga en containeravbildning

Om du vill visa en lista över dina aktuella lokala avbildningar använder du kommandot docker images:

docker images

Kommandots utdata ovan visar en lista över dina aktuella lokala avbildningar:

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

Om du vill använda containeravbildningen azure-vote-front med ACR måste du tagga avbildningen med inloggningsserverns adress för registret. Den här taggen används till routning när du push-överför containeravbildningar till ett avbildningsregister.

Hämta inloggningsserverns adress genom att köra kommandot az acr list och fråga efter loginServer så här:

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

Tagga nu din lokala azure-vote-front-avbildning med acrLoginServer-adressen för containerregistret. Ange versionsnumret för avbildningen genom att lägga till :v1 i slutet av avbildningens namn:

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

Kontrollera att taggarna har tillämpats genom att köra docker images igen.

docker images

En bild taggas med ACR-instansadressen och ett versionsnummer.

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

Push-överför avbildningar till registret

När avbildningen har skapats och taggats push-överför du avbildningen azure-vote-front till ACR-instansen. Använd docker push och tillhandahåll din egen acrLoginServer-adress för avbildningsnamnet på följande sätt:

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

Överföringen till ACR kan ta några minuter.

Lista med avbildningar i registret

Du kan returnera en lista med avbildningar som har överförts till ACR-instansen genom att köra kommandot az acr repository list. Ange din egen <acrName> på följande sätt:

az acr repository list --name <acrName> --output table

Följande exempelutdata visar azure-vote-front-avbildningen i registret:

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

Om du vill visa taggarna för en viss avbildning kör du kommandot az acr repository show-tags på följande sätt:

az acr repository show-tags --name <acrName> --repository azure-vote-front --output table

Följande exempelutdata visar v1-avbildningen som taggades i föregående steg:

Result
--------
v1

Nu har du en behållaravbildning som lagras i en privat Azure Container Registry-instans. Den här avbildningen distribueras från ACR till ett Kubernetes-kluster i nästa självstudiekurs.

Nästa steg

I den här självstudien har du skapat en Azure Container Registry och push-överfört en avbildning för användning i ett AKS på Azure Stack HCI- och Windows Server-kluster. Du har lärt dig att:

  • Skapa en ACR-instans (Azure Container Registry)
  • Tagga en containeravbildning för ACR
  • ladda upp avbildningen till ACR.
  • Visa avbildningar i registret

Gå vidare till nästa självstudie och lär dig hur du distribuerar ett Kubernetes-kluster i Azure.