OpsCanary
azurecontainer appsPractitioner

Leveraging Dapr in Azure Container Apps: A Game Changer for Microservices

5 min read Microsoft LearnJul 26, 2026Reviewed for accuracy
Share
PractitionerHands-on experience recommended

Azure Container Apps exists to simplify the deployment and management of microservices. With the rise of cloud-native applications, developers need a way to manage service-to-service communication efficiently. Dapr, the Distributed Application Runtime, provides a robust framework for building microservices by enabling seamless communication and state management. By leveraging Dapr, you can focus on writing business logic while the framework handles the complexities of service interactions.

To get started, you need to enable Dapr at the container app level by configuring a set of Dapr arguments. These configurations apply across all revisions of your container app, ensuring consistency in behavior. The Dapr sidecar runs on HTTP port 3500 and gRPC port 50001, allowing your container app to invoke Dapr APIs easily. You can utilize various Dapr components, such as state management with Azure Cosmos DB or pub/sub with Azure Service Bus queues, to enhance your application's capabilities. For instance, using state.azure.cosmosdb for state management or pubsub.azure.servicebus.queues for messaging can significantly improve the responsiveness and reliability of your services.

In production, be aware of the limitations. Dapr server extensions, actor, and workflow SDK packages are not compatible with Azure Container Apps. Additionally, Dapr is not supported for jobs, which could limit its use in certain scenarios. Always check for updates and release announcements on GitHub to stay informed about the latest Dapr versions in Azure Container Apps, as they follow semantic versioning to denote compatibility with the corresponding OSS Dapr runtime version APIs and tools.

Key takeaways

  • Enable Dapr at the container app level to streamline microservices communication.
  • Invoke Dapr APIs via HTTP on port 3500 or gRPC on port 50001 for efficient service interaction.
  • Utilize stable Dapr components like state management with Azure Cosmos DB for robust application performance.
  • Stay updated with Dapr releases on GitHub to ensure compatibility and access new features.
  • Avoid using Dapr for jobs, as it is not supported in Azure Container Apps.

Why it matters

In production, using Dapr with Azure Container Apps can significantly reduce the complexity of microservices communication, leading to faster development cycles and more resilient applications. This allows teams to focus on delivering business value rather than managing infrastructure.

Code examples

plaintext
state.azure.cosmosdb
plaintext
pubsub.azure.servicebus.queues
plaintext
1.13.6-msft.1

When NOT to use this

The official docs don't call out specific anti-patterns here. Use your judgment based on your scale and requirements.

Want the complete reference?

Read official docs

Test what you just learned

Quiz questions written from this article

Take the quiz →
DigitalOceanSponsor

Simple, affordable cloud — VMs, Kubernetes, and managed databases in minutes. Trusted by 600,000+ developers. Spin up a Droplet in 60 seconds.

Try DigitalOcean →

Get the daily digest

One email. 5 articles. Every morning.

No spam. Unsubscribe anytime.