Azure Container Registry is a managed Docker registry service based on the open-source Docker Registry 2.0. Create and maintain Azure container registries to store and manage your private Docker container images. Use container registries in Azure with your existing container development and deployment pipelines, and draw on the body of Docker community expertise.
For background about Docker and containers, see:
Pull images from an Azure container registry to various deployment targets:
- Scalable orchestration systems that manage containerized applications across clusters of hosts, including DC/OS, Docker Swarm, and Kubernetes.
- Azure services that support building and running applications at scale, including Container Service, App Service, Batch, Service Fabric, and others.
Developers can also push to a container registry as part of a container development workflow. For example, target a container registry from a continuous integration and deployment tool such as Visual Studio Team Services or Jenkins.
Registry - Create one or more container registries in your Azure subscription. Each registry is backed by a standard Azure storage account in the same location. Take advantage of local, network-close storage of your container images by creating a registry in the same Azure location as your deployments. A fully qualified registry name has the form
Managed Registry - A tier that offers additional capabilities for registries in three SKUs - Basic, Standard, and Premium. The images in these SKUs are stored in Storage Accounts managed by the Azure Container Registries service, which improves reliability and enables new features. New capabilities include webhook integration, repository authentication with Azure Active Directory, and support for delete functionality. Users have the option to choose between managed registries or to create a registry backed by their own Storage Accounts when creating registries.
Repository - A registry contains one or more repositories, which are groups of container images. Azure Container Registry supports multilevel repository namespaces. This feature enables you to group collections of images related to a specific app, or a collection of apps to specific development or operational teams. For example:
myregistry.azurecr.io/aspnetcore:1.0.1represents a corporate-wide image
myregistry.azurecr.io/warrantydept/dotnet-buildrepresents an image used to build .NET apps, shared across the warranty department
myregistry.azrecr.io/warrantydept/customersubmissions/webrepresents a web image, grouped in the customer submissions app, owned by the warranty department
Image - Stored in a repository, each image is a read-only snapshot of a Docker container. Azure container registries can include both Windows and Linux images. You control image names for all your container deployments. Use standard Docker commands to push images into a repository, or pull an image from a repository.
Container - A container defines a software application and its dependencies wrapped in a complete filesystem including code, runtime, system tools, and libraries. Run Docker containers based on Windows or Linux images that you pull from a container registry. Containers running on a single machine share the operating system kernel. Docker containers are fully portable to all major Linux distros, Mac, and Windows.
- Create a container registry using the Azure portal
- Create a container registry using the Azure CLI
- Push your first image using the Docker CLI
- To build a continuous integration and deployment workflow using Visual Studio Team Services, Azure Container Service, and Azure Container Registry, see this tutorial.
- If you want to set up your own Docker private registry in Azure (without a public endpoint), see Deploying Your Own Private Docker Registry on Azure.