Skill 3.3: Provision and manage containers
Today, containers are considered a first choice for instant deployments following DevOps methodology. With this evolution, Microsoft has also given equal or more importance to con- tainers while designing product features for Microsoft Azure. Multiple containers can run on a host operating system (Windows or Linux), and each container provides hosted applications with a mechanism to utilize CPU, memory, file storage, and network connections.
Although containers do not have their own operating systems, so they can be deployed and run anywhere, most distributions include most user-mode operating system components. They share the host operating system with other containers and are isolated from each other. Containers are widely used to develop and package applications along with their dependen- cies and configurations into a single container image. The containerized applications will be deployed as container images on the host operating system.
By using containers, deployment times are shortened, maintenance is easier, and scale-out/ in is possible in seconds. This is the sole reason why large enterprises are slowly moving to container technology. Containers can be built from your private image repository using Azure Container Registry, Docker Hub, or similar repositories. You can download images, make them available to container hosts, and then deploy new container instances in a matter of seconds.
Developers can even further modify them with their runtimes, plugins, and their own code, creating their own versioned images that can be instantly deployed. This means developers are more productive and can manage their code dynamically to deploy new code versions quickly. This can be further integrated to CI/CD tolls to automate the end-to-end deployment flow for containerized applications.
Create and manage an Azure Container Registry
An Azure Container Registry (ACR) is a container image repository based on Docker Registry 2.0. You can create an ACR resource instance in your Azure subscription to store and manage container images and related components. An ACR can be used with your existing container pipelines, or you can use ACR Tasks to build new container images directly in Azure.
When you deploy an ACR to your subscription, there are three SKU options to choose from: Basic, Standard, and Premium. Table 3-1 outlines some of the primary differences between tiers.
TABLE 3-1 Azure Container Registry tiers
Feature | Basic | Standard | Premium |
Included storage | 10 GiB | 100 GiB | 500 GiB |
Webhooks | 2 | 10 | 500 |
Download bandwidth | 30 Mbps | 60 Mbps | 100 Mbps |
Geo-replication | Not supported | Not supported | Supported |
Availability zones | Not supported | Not supported | Supported |
Customer-managed keys | Not supported | Not supported | Supported |