Azure Container Registry (ACR)
What is Azure Container Registry (ACR) for
Azure Container Registry (ACR) is a private registry service for building, storing, and managing container images and related artifacts like as Dockerhub. The diffeernce between ACR and Doclerhub is that dockerhub is free for developers for public Repos (even private), but ACR is private and you should pay for it. Enterprises don’t want to have their containers on a public share. They can either buy an enterprise plan or they can use a private registry like Azure Container Registry (ACR).
In this post, I create an Azure container registry instance with the Azure portal. Then, use Docker commands to push a container image into the registry, and finally pull and run the image from your registry.
To log in to the registry to work with container images, the requirement is that you are running the Azure CLI (version 2.0.55 or later recommended). Run az --version
to find the version. If you need to install or upgrade, see Install Azure CLI.
You must also have Docker installed locally. Docker provides packages that easily configure Docker on any Mac, Windows, or Linux system.
Create a container registry
Sign in to Azure
You should have an Azure account. Sign in to the Azure portal at https://portal.azure.com.
Select Create a resource > Search for container registry as following image:
Press to the Container Registry
In the Basics tab, enter values for Resource group and Registry name : mehzanContainerRegistry. The registry name must be unique within Azure, and contain 5-50 alphanumeric characters. Here I am creating a new resource group: mehzanRSG i with name: mehzanContainerRegistry, in the North Europe, , and for SKU, select ‘Basic’.
press to t he Review + Create button and then Create button, it takes a little time and then shows that Container Registry is deployed, as showing in the following image:
Press to Go to Resouce button then shows the overview of mehzancontainerRegistry as follow.
Tip: In this quickstart, you create a Basic registry, which is a cost-optimized option for developers learning about Azure Container Registry. Choose other tiers for increased storage and image throughput, and capabilities such as connection using a private endpoint. For details on available service tiers (SKUs), see Container registry service tiers.
Ok now we have created an ACR with name mehzancontainerregistry.
Take note of the registry name and the value of the Login server (mehzancontainerregistry.azurecr.io). which is a fully qualified name ending with azurecr.io
in the Azure cloud. You use these values in the following steps when you push and pull images with Docker.
Log in to registry
Before pushing and pulling container images, you must log in to the registry instance. Sign into the Azure CLI on your local machine, then run the az acr login command. Specify only the registry resource name when logging in with the Azure CLI. Don’t use the fully qualified login server name.
If you haven’t install Azure CLI ( look to: How to install the Azure CLI). After installation open command line in your local machine and run:
az login
then you can have the following propmt:
Now login to the Container Registry (CR) (Docker should be running, in Windows Docker desktop).
az acr login --name <registry-name>
az acr login --name <em><strong>mehzancontainerRegistry</strong></em>
List container images
To list the images in your registry, navigate to your registry in the portal and select Repositories, then select the mezan07/productmicroservice
repository you created with docker push
.
By selecting the mehzan07/Productmicroservice repository, you see the latest-tagged image under Tags.
Run image from registry
Now, you can pull and run the mehzan07/Productmicroservice:latest
container image from your container registry by using docker run:
docker run mehzancontainerregistry.azurecr.io/mezan07/productmicroservice:latest
Clean up resources
To clean up your resources, navigate to the mehzanRSG resource group in the portal. Once the resource group is loaded, click on Delete resource group to remove the resource group, the container registry, and the container images stored there.
Conclusion
In this post I have described how to create an Azure container registry using the Azure portal. Pulled image from Dockerhub and tagged it and pushed an image to Azure Container registry (ACR). Finely pulled the image and ran the image from the registry.
This post is part of “Azure step by step