This document describes how to set up an EPiServer Commerce site (8.12 and above) to run on Azure Web Sites. In this scenario a Commerce Core site is installed and most steps can also be applied to sites via VS extension and installing NuGet packages. Refer to Azure Web Apps for more detailed information about Azure.
Like EPiServer CMS webite on Azure, the Commerce website can be run on Azure Web Site environment with multiple instances. The website instances share the same Azure SQL database, and the blob storage in Azure is used for storing of the file binary data. Load balancing is applied and the Azure Service Bus manages events between the CMS websites.
Follow the steps below to create an EPiServer Commerce website running in an Azure Apps environment.
1. Creating a site
In Visual Studio, select Tools > Extensions and Updates menu. In the dialog, select Online and Search EPiServer CMS Visual Studio Extension then install extenstion. Refer to Visual Studio Gallery for more information about EPiServer Extension.
Create a new project by selecting New > Project > Visual C#, and then EPiServer > EPiServer Web Site. In the dialog select Empty, uncheck "Add EPiServer Search", to use search functionality when running in Azure see section "Search in Azure" on Deploying to Azure Web Apps.
Install the NuGet package EPiServer.Commerce, to latest version (or 8.12 at least).
Install the NuGet package EPiServer.Commerce.Azure to the project.
Add the cloud license to the website, this will be used and activated later when deploying the website to Azure.
Go to Administration > System Settings > Search Index, click on Rebuild Index, the catalog index will be restored in your storage.
Note: If you are using LuceneSearchProvider as default search provider, you need to do some more extra steps:
Open Mediachase.Search.config, in SearchProviders, and set the attribute defaultProvider to LuceneAzureSearchProvider.
Set your connectionStringName so that the provider has the name="LuceneAzureSearchProvider" matching with your Azure Storage name (in connectionStrings.config) and storage="<container you want to index>".
Set the connectionStringName in Indexers tab matching with your Azure Storage name (in connectionStrings.config) and basePath is "<container where you want to store build info>".
Example of search config in Mediachase.Search.config, defined for using Lucene on Azure: