Blog Post

Apps on Azure Blog
4 MIN READ

Bring Your Own Orchestrator to Azure Container Apps Jobs

hetvip's avatar
hetvip
Icon for Microsoft rankMicrosoft
Jul 29, 2026

13 orchestrator templates. One serverless execution layer: Azure Container Apps Jobs.

Azure Container Apps Jobs are a good fit for batch processing, ETL, machine learning, reports, and other tasks that run to completion. But when those tasks have dependencies, retries, or fan-out, you still need an orchestrator.

Many teams already have one. The community-maintained Bring Your Own Orchestrator collection provides 13 templates that connect existing workflow engines to Azure Container Apps Jobs. The collection is also listed in the Microsoft Azure Container Apps template index.

The idea is simple:

  • Your orchestrator manages schedules, dependencies, retries, and workflow history.
  • Azure Container Apps Jobs runs each containerized task and reports the result.

You keep the control plane your team knows while ACA Jobs provides the execution layer.

How it works

Each integration follows the same flow:

  1. The orchestrator authenticates to Azure.
  2. It starts an ACA Job execution.
  3. It waits for that execution to succeed or fail.
  4. It uses the result to continue, retry, or stop the workflow.
Your orchestrator  --->  Azure Container Apps Job
  ^                         |
  +---- execution result ---+

The templates package this flow in the native model of each platform: an Airflow operator, a Temporal Activity, an Argo workflow template, a Camunda service task, or visual actions in Logic Apps and n8n.

The workload container stays independent of the orchestrator that launched it.

Choose the orchestrator that fits the workflow

There is no single best orchestrator for every workload. The useful question is which control plane matches the way your team models work.

When this describes your teamStart withWhy
You already operate AirflowAirflow on ACA JobsAdds an ACA Jobs operator without replacing your Airflow deployment
You need a complete Airflow environmentAirflow hosted on ACADeploys the Airflow control plane and the ACA Jobs integration
Your workflows are Kubernetes-native and run from AKSArgo WorkflowsUses Argo workflow templates and AKS workload identity
You model long-running business processes in BPMNCamunda 8Connects Camunda service tasks to ACA Job executions
You use JSON-defined microservice workflowsConductorUses Conductor workers and native FORK_JOIN workflows
You need durable replay, heartbeats, and resilient retriesTemporalKeeps Temporal as the durable control plane while ACA Jobs runs the workload
You build asset-centric Python data pipelinesDagsterUses Dagster resources, ops, and dynamic mapping
You build general Python flows and task automationPrefectUses Prefect tasks, flows, and mapped execution
You prefer visual automation and SaaS integrationsn8nProvides visual workflows for starting and observing ACA Jobs
You use Azure-native data pipelinesAzure Data Factory and FabricProvides pipeline definitions for Azure data integration workflows
You need connector-rich application integrationLogic Apps StandardUses stateful workflows, connectors, and native control flow
You want Azure-native, code-first durable orchestrationDurable FunctionsUses durable orchestrations, activities, retries, and fan-out/fan-in
You already operate a Dapr-enabled workflow hostDapr WorkflowDemonstrates Dapr Workflow directing external ACA Job workloads

The Bring Your Own Orchestrator catalog keeps this comparison current and links to deployment instructions for every option.

Before production

The existing-orchestrator templates are designed around managed identity, scoped Azure RBAC, failure handling, and native fan-out/fan-in examples. Their fan-out samples default to five shards and accept configurations from 1 to 50.

Treat higher shard counts as configuration support, not a throughput guarantee. Test them against your Azure quotas, orchestrator limits, and downstream systems.

Two template-specific boundaries are worth calling out:

Dapr Workflow is a preview architecture

Azure Container Apps Jobs do not host Dapr sidecars. The Dapr workflow runtime must run in a separate Dapr-enabled host and start ACA Jobs through Azure Resource Manager. The template is therefore labeled preview architecture.

Fabric still needs a native workspace run

The Azure Data Factory path has live validation. The included Fabric pipeline is structurally validated but still needs a native run in a Fabric workspace.

Each repository README documents its validation scope and limitations.

Get started

  1. Open the template catalog.
  2. Choose the orchestrator your team already uses.
  3. Review that template's prerequisites and validation notes.
  4. Deploy the sample ACA Job with azd up.
  5. Run the single-job example, then test fan-out and failure behavior.

For example, if Airflow is already your standard:

git clone https://github.com/hetvip2/airflow-on-aca-jobs
cd airflow-on-aca-jobs
azd up

The exact setup differs by orchestrator, but the target remains ACA Jobs.

Try the templates

Closing thoughts

Using Azure Container Apps Jobs should not require an orchestrator migration. Keep the workflow engine your team already trusts and use ACA Jobs for containerized task execution.

Explore all 13 options in the Bring Your Own Orchestrator to Azure Container Apps Jobs collection.

References

  1. Azure Container Apps Jobs overview
  2. Azure Container Apps Jobs management API
  3. Managed identities in Azure Container Apps
  4. Azure Developer CLI documentation
  5. Bring Your Own Orchestrator template catalog
  6. Azure Container Apps community template collections
Updated Jul 29, 2026
Version 1.0
No CommentsBe the first to comment