How Microsoft 365 Backup works and how to set it up
May 16, 2025A New Way to Host Functions on ACA
With the new native hosting model, Azure Functions are now fully integrated into ACA. This means you can deploy and run your functions directly on ACA, taking full advantage of the robust app platform.
If you are using CLI, you can deploy Azure Functions directly onto Azure Container Apps using the Microsoft.App resource provider by setting “kind=functionapp” property on the Container App resource.
Please note, in the new native hosting model,
- Azure Functions extensions will continue to work as before.
- Auto-scaling will remain available.
- Deployments are supported through ARM templates, Bicep, Azure CLI, and the Azure portal.
- Monitoring using Application Insights is supported in the same way as apps hosted by Azure Functions.
- Your function app can access the same virtual networking resources provided by the Container App environment.
- Entire range of event-driven triggers and bindings is available. However, only the following triggers can dynamically scale (from zero instances) when running in ACA environment. This list is consistent with earlier approach of hosting via Microsoft.Web resource provider.
- All standard function tasks like processing file uploads, running AI tasks, executing scheduled jobs, or reacting to changes in a database and entire list of Azure function scenarios are supported.
- Serverless GPU and GPU-enabled hosting in the Dedicated plan with workload profiles is supported.
Feature-Rich and Fully Integrated
Native Azure Functions on ACA unlock the complete feature set of Azure Container Apps, including:
- Multi-revision management and traffic split
- Easy Auth
- Metrics & Alerting
- CI/CD through Azure pipelines and GitHub actions
- Health probes
- Custom domains and managed certificates
- And many other features that you can learn at ACA documentation
In summary, by running Functions in Container Apps, you benefit from automatic scaling, access to native ACA features, official support and a fully managed container environment—all without having to manage the underlying infrastructure yourself.
Transitioning to the new hosting method
Previously, hosting Azure Functions on Azure Container Apps (ACA) was made available using Microsoft.Web resource provider. While this method is effective, it introduced complexity and had limited access to some of ACA’s native features. Additionally, some of you may have deployed plain vanilla function images on the ACA environment, However, this approach does not offer advantages of auto-scaling and is not officially supported.
If you are currently deploying function images on Azure Container Apps, we recommend transitioning to the new native hosting model. Here are the steps to move to this new approach,
- Simply create a new Function Container App using the native hosting model. You can create via Azure Portal or Azure CLI.
- During the creation process, provide the function image URL of your existing function image at the appropriate steps. Additionally, remember to manually create the storage account and app insight resources, and set necessary app settings from existing app as Environment Variables and Secrets in the native Functions Container App. This will set your Function Container App with the new “kind=functionapp” property.
- The new native Function Container App should be tested to ensure it is working correctly. If it is functioning as expected, you can proceed to delete the old deployment.
Get Started Today
Ready to try it out? You can deploy your first function app natively on ACA using the Azure CLI, Bicep, ARM templates, or the Azure Portal.
Explore the documentation below to learn more.
- Overview: Azure functions on Azure Container App
- Getting started: Create a function app on ACA
- Sample Bicep template to create function app on ACA environment