Microsoft today launched Azure Container Apps at its Ignite conference. This fully managed container service complements Microsoft's existing container infrastructure services such as the Azure Kubernetes (AKS) and Azure Kubernetes Services (AKS). Microsoft notes that Azure Container Apps is specifically designed for microservices. It can scale quickly based on HTTP traffic and events, as well as long-running background jobs.
It is very similar to AWS App Runner which is one of Amazons smaller fleets of serverless container services. App Runner is also focused on microservices. Google offers several container-centric services as well, including Cloud Run, which is its serverless platform to run container-based apps.
Microsoft claims that Azure Container Apps will allow developers to create their apps in any language or framework they choose, and then have it deployed using the new service. It is built on top of open-source projects such as Microsoft's Dapr application runtime. The scaling technology for the infrastructure is powered by Kubernetes Event Driven Autoscaling, (KEDA), which is also supported by Red Hat, Codit, and Vexxhost as well as Snyk.
Roanne Sones from Microsoft, corporate VP for Azure Edge, and Platform explained that Azure Container Apps is more like a PasS-like experience. Customers start with IaaS but eventually move to PaaS. Why not? It's easy to think about the app, or use it. This is how I see laddering. Azure Container Apps is the underlying infrastructure service you provide to customers to run a CNCF-compliant Kubernetes server. Azure Container Apps sits over that. It abstracts away more infrastructure so that you don't have to dig into the core of its design and lifecycle management.
No surprise, then, that major cloud providers offer serverless containers services. These are available for both ops teams who need full control over their deployments or for companies that prefer to have this done for them. Even though there are many tools that make managing Kubernetes clusters easier, it is still a full-time job. Containers promise to be able to scale services as needed, and free developers from worrying about the infrastructure on which their code will run. Serverless is the best option for many teams who simply want their services to be put into production.