Azure Container Apps — Serverless Containers
Deploy and scale containerized microservices with Azure Container Apps — serverless Kubernetes without the complexity.
“Welcome back. Azure Container Apps occupies the sweet spot between Azure App Service and AKS. It lets you run containerized applications, including microservices, without managing Kubernetes infrastructure, while providing Kubernetes-powered capabilities like KEDA event-driven autoscaling and Dapr for distributed application patterns. If you want to run containers at scale without becoming a Kubernetes expert, Container Apps is your service.”
“Choosing between these three services: App Service is the right choice for straightforward web applications and APIs where you don't need container-level control. AKS is for teams that need full Kubernetes control — custom operators, specialized networking, complex multi-tenant requirements. Container Apps is the middle ground — you get the portability and ecosystem of containers, KEDA autoscaling, and Dapr integration, without managing cluster nodes, control planes, or Kubernetes manifests.”
“A Container Apps Environment is the hosting boundary — similar to an AKS namespace or a Service Fabric cluster. Apps in the same environment share a network and can discover each other by name. You can have multiple environments for isolation between dev and production. The Consumption plan is serverless — apps scale to zero when idle and you pay only when they're processing requests. The Dedicated plan provides always-on instances for latency-sensitive workloads.”
“KEDA enables event-driven autoscaling beyond simple CPU metrics. The HTTP scaler scales your container from zero to N instances based on incoming request concurrency — no traffic means zero instances and zero cost. The Azure Queue scaler adds instances proportionally to the number of messages waiting — if 1000 messages are queued, spin up 10 consumer instances to process them. This event-driven model is far more responsive than traditional CPU-based autoscaling and eliminates idle compute costs completely.”
“Dapr is a sidecar runtime that solves the hard problems of microservices. Service invocation with automatic retry and circuit breaking. Pub/sub messaging that lets you switch from Service Bus to Event Grid to Kafka by changing a configuration file, not your application code. State management that lets you save and retrieve state without choosing a specific database in your code. Enable Dapr on your Container App with a single configuration flag — no application code changes required.”
“Container Apps has built-in traffic management. When you update your app, a new revision is created — an immutable snapshot of that configuration. You can run multiple revisions simultaneously and split traffic between them — send 10% of traffic to a new version and 90% to the stable version for a canary deployment. Revision labels give each revision a stable URL, so you can test the new version directly without routing production traffic to it.”
“Let me show Container Apps in action. I'll create an environment, deploy a web API container from Docker Hub, configure external ingress to get a public URL, then deploy a background worker that processes queue messages, configure KEDA scaling so it scales with queue depth, and demonstrate a canary deployment by deploying a new version and gradually shifting traffic. All without touching a single Kubernetes YAML file.”
“Container Apps is rapidly becoming the preferred way to run microservices on Azure for teams that don't need full Kubernetes control. KEDA and Dapr make complex distributed patterns accessible. Next we cover Azure API Management — the service that lets you publish, secure, and manage all your APIs from a central gateway, whether they're running on Container Apps, App Service, Functions, or anywhere else.”
- 1Create a Container Apps environment
- 2Deploy a container from Docker Hub
- 3Configure ingress and custom domain
- 4Add a second microservice and use service discovery
- 5Configure KEDA-based scaling rules
- 6Add a Dapr sidecar for pub/sub
- 7Monitor with Azure Monitor and Log Analytics