https://store-images.s-microsoft.com/image/apps.58293.f4380976-c3e5-4cdc-931a-5dfa7a6cb6e9.0fb16464-75bf-41fe-9cd4-f0e0a180daeb.d798e9c9-be29-4e6e-ba00-01250f9e0c56

Strapi on Azure App Service

QuickDeploy

Strapi on Azure App Service

QuickDeploy

Strapi on Azure App Service with Azure Database for MySQL & Azure Storage

Strapi is a headless CMS and content management hub. With features such as Content Versioning, a Workflow system and seamless Integrations it is ideal for use cases such as dynamic elements for your mobile apps, blog posts and articles for your website, configuration data for your backend, providing rich and structured data for applications, use with SSGs (Static Site Generators) etc.


Strapi supports MySQL, PostgreSQL among other databases. It does not support MongoDB. This template uses MySQL.


The solution (ARM) template deploys Strapi into Azure App Service, provisions Azure Database for MySQL for database and uses Azure Storage for assets. Other required Azure Resources are also created as necessary such as an App Service hosting plan. For more details see visit the Plans tab. This solution template is ideal for getting started and test drive scenarios, and can also be used in production with some changes. The PaaS approach makes it easy to configure resources for scalability and availability.


The template uses some default settings and configuration as mentioned below, they can be changed by editing the ARM template.

  • Azure App Service - Basic B1
  • Azure Database for MySQL - Basic, 1 vCore(s), 5 GB (Gen5)
  • Storage Account - General Purpose v2 Standard


IMPORTANT NOTE: It takes a good 15 minutes or more before the URL starts working. Accessing the URL early may give URL not found or similar errors. It is recommended to wait for a few minutes and refresh the page.

One can also check the status of the deployment in the App Service > Deployment Center > Logs section.


DEPLOYMENT FAILED: The deployment may show as failed sometimes with error message "The resource operation completed with terminal provisioning state 'Failed'." but be actually successful. Verify in the App Service > Deployment Center > Logs section and by accessing the URL before deploying again.


Disclaimer: All products & any trademarks are owned by the respective companies. Most of the products are Open-Source.