Docker web app deployed to Azure App Service using ADO, made easy!

Docker web app deployed to Azure App Service using ADO, made easy!

Container(Docker) is a magic word everywhere next to Cloud, Cloud + Container is super Awesome!

Let's see how a Docker web app can be deployed in Azure PaaS i.e., Azure app service using Azure DevOps.

High level:

  1. Setup the Azure(Cloud) pre-requisites including Creating Resource group, Azure Container Registry (ACR), App service plan, Azure Webapp, Azure SQL Server and SQL Database.
  2. Update firewall rule and web app configuration.
  3. In the Azure DevOps (ADO) using Azure Container Registry(ACR) deployment task Run, Build and push services are used to generate and push the container in the ACR. Using Publish artifacts task publish database dacpac task.
  4. In the ADO release orchestrator, add couple of agent, one for database publishing(VS2017 hosted agent) and other one for web app (Ubuntu hosted agent) publishing. Connect ADO end points with previously created Azure Resource and Container registry. In the release task from ACR image is deployed directly to Azure Webapp (PaaS), leads to quick data transfer in the Cloud.
  5. In the Azure web app, settings, container section update Single container configured with Azure Container Registry, image and tag settings.
  6. Any code check in leads to trigger the CI and publish the image to ACR further with Continuous deployment mode it initiates the release orchestrator and deploy in the Azure Web app with app plan configuration.

Azure supports multiple deployment model, Azure container instance, Azure web app, Azure Kubernetes Service etc., Azure web app model provides the PaaS model, which is flexible and ready made solution to make use of cloud platform.

Containerization, which is OS virtualization, provides ample benefits on optimization, cost saving, scalability, resiliency and auto recovery options. Microsoft Azure Container Registry(ACR) provides additional utility tasks to Run,Build and push tasks to eases the deployment process of containers. Further optimization in the containers and cloud platform tool set enables, containerization is essential for the suitable Microservices architect applications.

Happy learning!


To view or add a comment, sign in

More articles by Senthilraj Krishnan

Insights from the community

Others also viewed

Explore topics