deploying-azure-container-appslisted
Install: claude install-skill alexpizarro/azure-lean-stack-skills
# Deploying Azure Container Apps
Scale-to-zero Docker containers for workloads SWA + FC1 can't handle: long-running servers, WebSocket/SSE, streaming, custom runtimes, multi-process sidecars, and run-to-completion background jobs.
## When to use Container Apps
| Need | Use |
|------|-----|
| CRUD API + React frontend | SWA — not this |
| Timer/queue trigger, AI workload, < 30 min | FC1 — not this |
| Long-running HTTP server, > 30s requests | **Container App** (this skill) |
| WebSocket / SSE / streaming | **Container App** with `--request-timeout 1800` |
| Sidecar (e.g. headless browser, embedded DB) | **Container App** multi-container |
| Batch / cron / one-shot processor | **Container Apps Job** (this skill, jobs section) |
| Multiple related apps sharing logs/networking | **Shared managed environment** (this skill) |
## Cost defaults
| State | Cost |
|-------|------|
| Idle (`minReplicas: 0`, `cooldownPeriod: 300`) | $0 |
| Active (template default 0.5 vCPU / 1 GiB) | pennies/month at low traffic |
| Always warm (`minReplicas: 1`, or `cooldownPeriod` longer than your traffic gaps) | ~A$8/day for a 1.5 vCPU replica, ~US$5/mo for the smallest |
| Log Analytics workspace | bound by `dailyQuotaGb` on the workspace (see [instrumenting-azure-app-insights](../instrumenting-azure-app-insights/SKILL.md)) |
**Scale-to-zero is a whole-system property, not a config value.** Four things silently pin a `minReplicas: 0` app at one billed replica 24/7 (gotchas #41–#45): something c