Kubernetes is not the only choice


Standalone Container Runtimes

Virtual Machine (VM)

Virtual Machines offer the greatest flexibility for running Docker containers, with many combinations of CPU and RAM configurations available. Both Windows and Linux VMs can host Docker, but VMs require significant maintenance and configuration. They are best suited for Dev/Test workloads due to their operational overhead.

Azure Container Instance (ACI)

Azure Container Instances provide a serverless container runtime where you simply provide the container and Azure runs it. ACI can handle both single and multiple instances, charging based on the number of vCPUs and GBs of memory used per second. This option is ideal for unpredictable burst workloads but can be challenging for cost prediction. ACI can also be integrated with Azure Kubernetes Service for hybrid workloads.

Azure App Service

Azure Web App for Containers allows you to run containers on the App Service platform, which is tailored for web-based workloads. It offers built-in deployment, scaling, and monitoring features, making it an excellent choice for web applications.

Azure Batch

Combining batch compute with containers is effective for scalable workloads. Azure Batch can distribute work across multiple batch jobs, and containers can be scaled efficiently. Low-priority VMs can be used to minimize costs.

Container Orchestration

Azure Kubernetes Service (AKS)

AKS is a fully managed Kubernetes service on Azure. It allows development teams to use Kubernetes without the operational burden of managing it. You select the Kubernetes version, and Azure handles the rest, providing a ready-to-use cluster for running containers.

Azure Service Fabric

Azure Service Fabric is a distributed system platform at the core of Azure. While less common, it can run, scale, and manage containers efficiently, offering another option for container orchestration.

Summary

The variety of options can make the decision challenging, but having flexibility and choice is advantageous when addressing specific needs.