CI/CD for Containers

Solution Idea

If you'd like to see us expand this article with more information (implementation details, pricing guidance, code examples, etc), let us know with GitHub Feedback!

Containers make it easy for you to continuously build and deploy your applications. By orchestrating deployment of those containers using Kubernetes in Azure Kubernetes Service (AKS), you can achieve replicable, manageable clusters of containers.

By setting up a continuous build to produce your container images and orchestration, Azure DevOps increases the speed and reliability of your deployment.

Architecture

Architecture diagram Download an SVG of this architecture.

Data Flow

  1. Change application source code
  2. Commit Application Code
  3. Continuous integration triggers application build, container image build and unit tests
  4. Container image pushed to Azure Container Registry
  5. Continuous deployment trigger orchestrates deployment of application artifacts with environment-specific parameters
  6. Deployment to Azure Kubernetes Service (AKS)
  7. Container is launched using Container Image from Azure Container Registry
  8. Application Insights collects and analyses health, performance, and usage data
  9. Review health, performance and usage information
  10. Update backlog item

Components

  • Container Registry: Store and manage container images across all types of Azure deployments
  • Azure Kubernetes Service (AKS): Simplify the deployment, management, and operations of Kubernetes
  • Application Insights: Detect, triage, and diagnose issues in your web apps and services
  • Azure DevOps: Build and deploy multi-platform apps to get the most from Azure services

Next steps

Pricing Calculator