Container Instances, Container Apps and AKS
😟 THE PROBLEM
“It works on my machine” but breaks on the server, and deploying many services is chaos.
😊 THE SOLUTION
Package apps as containers and run them on ACI, Container Apps or AKS.
- Different settings break the app✓ Containers include their dependencies
- One quick task needs a server✓ Azure Container Instances, per second
- Hundreds of services to manage✓ AKS orchestrates and self-heals
Quick answer
Azure offers three main ways to run containers. Azure Container Instances (ACI) runs individual containers on demand with no servers to manage. Azure Container Apps runs containerised microservices with serverless scaling, including to zero. Azure Kubernetes Service (AKS) is managed Kubernetes for orchestrating many containers with full control.
Exam objective: 2.2.1 Compare compute types, including containers, virtual machines, and functions. 2.2.4 Describe application hosting options, including web apps, containers, and virtual machines. (Skills measured as of July 20, 2026)
Start with a question
“It works on my machine!” Why does code break when it moves to a server?
Because the server has different versions and settings. Containers fix this by packing the app with everything it needs.
Explain it like I’m 10
The technical explanation
Container Instances
- Single containers or groups
- Seconds to start
- Per-second billing
- Batch jobs, quick tasks
Container Apps
- Microservices and APIs
- Event-driven autoscale (KEDA)
- Scale to zero
- No cluster to manage
AKS
- Managed Kubernetes
- Full Kubernetes API
- Large, complex systems
- You manage node pools and upgrades
Real-world business scenario
A gaming studio
- The problem
- Match-making, leaderboards and chat ran as separate apps on VMs that were hard to deploy consistently.
- What they used
- Packaged each service as a container and ran them on AKS, with images in Azure Container Registry.
- Why that choice
- Kubernetes orchestrates many services with rolling updates and self-healing.
- The result
- Deployments went from monthly to daily, with automatic recovery from crashes.
When to use it and when not to
✓ Use it when…
- **ACI** for quick, isolated container tasks.
- **Container Apps** for microservices without Kubernetes expertise.
- **AKS** for complex systems needing full control.
✕ Think twice when…
- AKS for a single small app.
- Containers for apps that need a full desktop OS.
Interview preparation
Say your answer out loud first, then open the model answer. Interviewers care more about your reasoning than the exact words.
Beginner What is the simplest way to run a container in Azure?
Model answer
Azure Container Instances. I give it an image and it runs, with no VMs or cluster to manage, and I pay per second while it runs.
Intermediate When would you choose AKS over Container Instances?
Model answer
When I have many containers that need orchestration: automatic scaling, rolling updates, self-healing, service discovery and load balancing. ACI is for single containers or short tasks; AKS is for complex, long-running microservice systems.
Experienced developer Where does Azure Container Apps fit?
Model answer
Between the two. It runs microservices on Kubernetes under the hood, with KEDA autoscaling, Dapr and revisions, but without exposing the cluster. It suits teams that want microservices and scale to zero without becoming Kubernetes operators. AKS is for when you need the full Kubernetes API and ecosystem.
Test yourself with exercises
3 original practice questions in the AZ-900 style. Pick your answers, then check them. You will see why each option is right or wrong. Score 75% or more and this topic is marked complete.
Quick revision
Key points
- ACI = run single containers quickly, no orchestration.
- Container Apps = serverless microservices on containers.
- AKS = managed Kubernetes, full orchestration and control.
- Containers start fast and run the same everywhere.
Important terminology
- Container image
- A packaged, versioned app plus its dependencies, stored in a registry such as Azure Container Registry.
- Kubernetes
- An open-source system for deploying, scaling and healing containers automatically.
- Azure Container Registry (ACR)
- A private registry for storing container images.
Common mistakes
- Choosing AKS for one simple container. ACI is far simpler.
Exam tips
- "Quickest way to run a container without managing VMs" = Azure Container Instances.
- "Orchestrate many containers" = AKS.
Five quick revision questions
-
1.Which service runs a single container with no orchestration?Show
Azure Container Instances.
-
2.Which service is managed Kubernetes?Show
Azure Kubernetes Service (AKS).
-
3.Which service offers serverless microservices with scale to zero?Show
Azure Container Apps.
-
4.Where are private container images stored?Show
Azure Container Registry.
-
5.Why are containers portable?Show
They package the app with its dependencies, so they run the same everywhere.
Official references
Finished this lesson? Tick it off. Your progress is saved in this browser.
Next up: Virtual Networks and Subnets