Introduction
Depuis son lancement, Azure Functions est devenu l’un des piliers du serverless sur Azure. Avec sa facturation à la consommation et sa simplicité de déploiement, il permet de développer rapidement des applications réactives et scalables.
En parallèle, Azure Container Apps est apparu comme une solution moderne pour exécuter des microservices conteneurisés, sans la complexité de gérer un orchestrateur comme Kubernetes.
Et si vous pouviez combiner les deux mondes ? Héberger vos Functions directement dans Container Apps ouvre une nouvelle voie pour les architectures cloud-native.
Azure Container Apps en quelques mots
Azure Container Apps est une plateforme managée permettant d’exécuter des applications et microservices conteneurisés.
Ses points forts :
- Scalabilité dynamique basée sur KEDA (Kubernetes Event-Driven Autoscaling).
- Isolation réseau et sécurité via intégration à des environnements contrôlés.
- Support natif des architectures microservices (Dapr, communication interservices, scaling par composant).
- Moins de complexité qu’un cluster AKS, tout en gardant une approche orientée conteneurs.

Pourquoi héberger des Azure Functions dans Container Apps ?
Traditionnellement, Azure Functions s’exécute sur des plans Consumption, Premium ou App Service.
Mais l’hébergement dans Container Apps apporte une valeur unique :
- Unification avec vos microservices
- Plus besoin de séparer vos workloads : vos Functions et microservices REST/Workers tournent dans le même environnement Container Apps.
- Communication simplifiée entre services.
- Flexibilité et contrôle
- Vous maîtrisez l’image Docker de votre Function App (runtime, dépendances, configuration).
- Support de runtimes non standards ou versions spécifiques.
- Scalabilité avancée
- Basé sur KEDA, ce qui permet de scaler vos Functions non seulement sur des événements Azure classiques (queues, timers, etc.), mais aussi sur n’importe quel scaler KEDA (Kafka, RabbitMQ, Prometheus, etc.).
- Scénarios hybrides et multi-cloud
- Vos Functions deviennent des conteneurs portables, exécutables aussi bien dans Azure Container Apps que dans AKS, voire dans d’autres environnements Kubernetes.
Quand choisir Functions dans Container Apps ?
✅ Idéal pour :
- Applications cloud-native où les Functions ne sont qu’une brique d’un ensemble de microservices.
- Scénarios nécessitant dépendances personnalisées (librairies natives, runtimes spécifiques).
- Workloads multi-cloud ou hybrides où la portabilité des conteneurs est un atout.
- Besoin d’événements KEDA avancés pour déclencher les Functions.
⚠️ À éviter si :
- Vous cherchez la simplicité absolue (plan Consumption classique reste le plus simple).
- Vos workloads sont très légers et irréguliers, où l’intérêt des conteneurs ne compense pas la complexité.
Conclusion
Avec Azure Functions dans Container Apps, Microsoft propose une option qui combine :
- la simplicité et réactivité du modèle serverless,
- avec la flexibilité et portabilité des conteneurs.
C’est une excellente solution pour les équipes qui construisent des architectures modernes, orientées microservices, et qui souhaitent centraliser toutes leurs applications cloud-native dans un seul environnement.
