Azure Container Apps runs containerized applications without requiring you to provision virtual machines, install Docker, or manage infrastructure directly. It accepts Docker Compose specifications and provisions the surrounding Azure resources, operational features, and monitoring for you. section 14.0 section 14.3
Listing 14.1 A simple Docker Compose specification
services:
numbers-api:
image: ghcr.io/diamol2e/ch08-numbers-api:2e
ports:
- "8081:8080"
networks:
- app-net
numbers-web:
image: ghcr.io/diamol2e/ch08-numbers-web:2e
environment:
- RngApi__Url=http:/./numbers-api:8080/rng
depends_on:
- numbers-api
ports:
- "8080:8080"
networks:
- app-net
networks:
app-net: {}
A two-container Compose application demonstrates shared networking, published ports, service dependencies, and environment-based API configuration. section 14.3
Deploying and repairing a distributed app
A random-number website and REST API can be deployed from Compose. After deployment, inspect the web app environment variables, replace the API address with the ACA domain, and verify the new revision before retesting the site. A to-do application extends the workflow with source builds, private database ingress, and a mounted secret containing connection details.
ACA supports autoscaling, scale to zero, staging-slot deployments, and integration with ACR. Azure’s service choices place ACI below it for simple apps and AKS above it when full configuration control is required. section 14.3
