Jobs — a new Azure Container Apps feature previewed at Microsoft Build 2023 — is now generally available.
In addition to continuously running services that can scale to zero, Azure Container Apps now supports jobs. Jobs enable you to run serverless containers that perform tasks that run to completion.
Azure Container Apps jobs support three trigger types: manual (on-demand), scheduled, and event-driven. Manual jobs are triggered by a user or an external system, such as another container app. Scheduled jobs are triggered at a specified time or interval. Event-driven jobs are triggered by scaling rules.
Common scenarios for jobs include:
- Running a one-time containerized data migration job.
- Running a scheduled, recurring containerized batch job, such as a nightly inventory processing job.
- Running a containerized job in response to an event, such as a message arriving in a queue.
- Running CI/CD build processes such as Azure Pipelines agents and GitHub Actions runners in a Container Apps environment.
A job can run multiple executions concurrently, and each job execution can run multiple replicas in parallel.
Container apps and jobs share the same Container Apps environment, providing them with a common serverless platform and shared capabilities such as networking and observability. Jobs can communicate with container apps in the same environment.
Jobs support both the Consumption and Dedicated plans. When jobs run in the Consumption plan, you pay only when jobs are executing, by the second. In the Dedicated plan, jobs with specialized compute requirements can take advantage of custom workload profiles.
To learn more, see the documentation and read the announcement blog post.