Blog

Find out about the latest from Cloudmersive.

Full Walkthrough for Cloudmersive Private Cloud Deployment on Azure App Service
6/20/2025 - Brian O'Neill


Calling all Cloudmersive Private Cloud customers!

We have exciting news: you can now deploy your Private Cloud instance on Azure App Service with Containers.

This means you can now take advantage of automated scaling, high availability, security, and maintenance - all while retaining full control over the private deployment environment.

If you’re wondering how to deploy your instance, you’re in luck! We’re going to cover the end-to-end deployment process in this post. By the end, you’ll know exactly what to do – and what bumps you might run into along the way.

Getting Started

First things first, we’re going to log into our Cloudmersive Management Portal and navigate to our Private Cloud tab.

Management Portal - Private Cloud Instances

From here, we’re going to select the node we’d like to deploy on an Azure App Service. In this walkthrough, we’ll select a Virus Scan API node.

Management Portal - Virus Scan API Private Cloud Node

On our node page (below the node information), we’ll find installation instructions available for a number of different Operating Systems. We’ll click on the Azure App Service option.

Management Portal - Select Azure App Service

This will populate the bottom of the page with instructions to complete our installation. Everything we need to know to complete our installation is included on this page, but we’ll go over each step in some more detail below.

Management Portal - Azure App Service Installation Overview

Step 1: Provisioning the Infrastructure

In the first step of our installation, we’ll head over to the Azure Portal and create an Azure Container Registry resource.

Creating our Container Registry

To do so, we’ll need to find and select the Container registries service. If this isn’t immediately showing up on our home page, we can either search for it using the search bar at the top of our page or click “More Services”.

Azure Portal - Find Container Registries

From there, we’ll select the option to create a new registry.

Azure Portal - Click Create New Registry

Naming our Container Registry

On our Create container registry page, we’ll start by giving our registry a relevant Name.

Azure Portal - Blank Create Registry

Note that on the Azure App Service installation instructions in our Cloudmersive Management Portal, it says to name our registry resource “CloudmersiveContainerRegistry”. Azure may point out that this registry is already in use, as seen in the below screengrab:

Azure Portal - registry name taken

If that’s the case, we can get around the problem by creating our own unique variation of the name. In this example, we’ll name our registry “DemoCloudmersiveContainerRegistry”.

Azure Portal - Create Unique Version of Name

Picking our Registry Location

We’ll then select a Location to register our container in. This can be any location we want – but we’ll want to make sure early on that our Azure subscription supports this same location in App Services. If our eventual App Service deployment location doesn’t match our container registry location, we won’t be able to deploy our service successfully.

Azure portal - carefully select location

Selecting a Pricing Plan

Finally, we’ll select whichever Pricing plan we want from the dropdown (Basic, Standard and Premium are all fine), and we’ll then click Review + create.

Azure Portal - review pricing plan and then review and create

When our container registry passes its validation check, we’ll click Create to wrap up Step 1.

Azure Portal - Create to finalize container registry

Step 2: Deploying Container Images to Container Registry

Now that we’ve created our container registry, we’ll deploy images to that registry.

Opening up the Cloud Shell CLI

We’ll deploy images using Azure’s Cloud Shell command line interface (CLI).

To access Cloud Shell, we’ll click on the Cloud Shell icon at the top of our Azure Portal bar.

Azure Portal - Click the cloud shell icon

This will open the Cloud Shell CLI in the bottom half of our Azure Portal.

Cloud Shell - Open Cloud Shell

Running Installation Commands

We’ll now run a series of commands in Cloud Shell to download the App Service installer package, enter the correct directory, and install Cloudmersive Private Cloud container images into our container registry.

We’ll find each of the commands we need in Step 2 of our Azure App Service installation instructions on our Private Cloud Node page in the Cloudmersive Management Portal.

Management Portal - Step 2 overview

We’ll begin by copying our App Service Installer package and pasting it in the Cloud Shell CLI. We’ll then run the command.

Management Portal - Paste App Service Installer

Next, we’ll copy the directory command and paste it in the Cloud Shell CLI, and we’ll run this command to enter the correct directory.

Cloud Shell - Directory navigation

Finally, we’ll get ready to execute our Cloudmersive Private Cloud container image installation command. First, however, we’ll want to modify a few of the default details in this command. We can do that directly in the CLI, but it might be easier to paste the command in a blank text (.txt) file and edit from there. Note that we won’t be sharing screengrabs of this process here due to the sensitive information involved.

We’ll first remove the default -AcrName “CloudmersiveContainerRegistry” and replace that with the name we gave our own container registry. Next, we’ll replace the -SubscriptionId “YOUR-SUBSCRIPTION-ID” placeholder text with our own Azure subscription ID value. We can find this value on the Overview tab of any active Azure resource, including the container registry we just created.

Initiating Installation

After we copy and paste our modified command in the Cloud Shell CLI, we should receive a welcome message for Cloudmersive Private Cloud’s Azure App Service Installer.

Cloud Shell - yes to confirm installation after running image installation command

After we type “Yes” to agree with terms of service, installation will begin. It might take up to 15 minutes.

Cloud Shell - Installation Running

When installation is complete, we’ll see the “Installer finished” notification in the Cloud Shell CLI. At this point, we can close out Cloud Shell.

Cloud Shell - Installer Finished

Step 3: Deploying the Cloudmersive Private Cloud API

With our container registry created and our **Cloudmersive Private Cloud images installed, we’ll now complete the third and final phase of installation – deploying the Cloudmersive Private Cloud API in a new Azure Web App.

Creating our Web App

We’ll start by navigating to Azure App Services from our Azure Portal home page.

Azure Portal - Select App Services

We’ll next click “Create”, and from there, we’ll select the option to create a Web App.

Azure Portal - Create App Service

Naming our Web App

We'll now create a unique name for our application with “CloudmersivePrivateCloud” in it. In this example, we’ll call our application “DemoCloudmersivePrivateCloud”, and we’ll save it in the same resource group as our container registry.

Azure Portal - Name web app

Publishing to a Container

Now we’ll select “Container” under publish, and we’ll choose “Windows” as our operating system. When we select our region, we’ll need to make sure it’s the same region we selected when we created our container registry.

Azure Portal - publish and os and region

Creating and Selecting our Pricing Plan

After that, we’ll create a new pricing plan. First, next to Windows plan, we’ll click Create new and we’ll name our pricing plan “CloudmersiveAppSvcPlan”.

Azure Portal - name pricing plan

Then, next to pricing plan, we’ll make our pricing plan selection. We’ll need a minimum of 32 GB RAM (Premium v3 P2mv3 or higher is recommended). In this example installation, we’ve selected the recommended plan.

Azure Portal - Select pricing plan with 32 gb ram

Selecting our Container and Managed Identity

Now we’ll navigate to the Container tab at the top of our page.

Azure Portal - Navigate to container tab

Next to image source, we’ll check the “Azure Container Registry” box.

Azure Portal - click azure container registry image source

The container registry we created earlier should be automatically selected after we do this – but if not, we can select our container registry from the registry dropdown.

Next to authentication, we’ll select the “Managed identity” option, and next to Identity, we’ll select a managed identity associated with our Azure subscription. Note that if we do NOT have a managed identity yet, we will need to create one and assign it the Acrpull role for our container registry – otherwise we won’t be able to use an Azure Container Registry as our image source. This can be done by the owner/administrator of our Azure subscription.

Azure Portal - configure managed identity selection

Now we’ll configure our image and tag fields.

In our Image field, we’ll enter the string cloudmersive-privatecloud. In our tag field, we’ll enter the string win2022_win_virusscanapi.

Disabling Application Insights

Next, we’ll navigate to the Monitor + secure tab at the top of our page.

Here, we’ll need to make sure enable application insights is set to “No”. This is important – leaving application insights on will break Cloudmersive Private Cloud API functionality.

Azure Portal - turn off application insights

Initiating our Web App Deployment

We’ll now click Review + create at the bottom of the page, and we’ll click create on the Review + create page to begin deploying our app.

Azure Portal - click create to deploy web app

Note that it’s possible our app deployment fails if no instances are available to satisfy the request immediately. If that occurs, Azure will give us an error message letting us know that App Service is “attempting to increase capacity”, and that we should “retry our request later”.

Azure Portal - Deployment failed app service attempting to increase capacity

This typically occurs when the Azure region we’re trying to deploy to is experiencing high demand and doesn’t have enough compute capacity available to provision new instances. We may need to retry later, or we may need to pick a new region to deploy in. Note that if we choose to select a new region, we’ll need to create a new container registry with the matching region.

When our deployment is successful, we can move onto the final steps of our installation process.

Azure Portal - Successful Web App Deployment

Configuring Environment Variables

We’ll now click “Go to resource” to navigate to our app page. From there, we’ll head to our app settings, and we’ll select environment variables.

Azure Portal - navigate to settings

We’re going to create two environment variables for our web app: one for our CMPAccessKey, and one for our website memory limit.

To create our first variable, we’ll click on the add variable button.

Azure Portal - click add for first variable

We’ll name our variable CMPCAccessKey, and we’ll give it the value shown in our Private Cloud Azure App Services installation walkthrough (in step 3, part 2). We’ll then click apply.

(Azure Portal - name and value first enviro variable

Next, we’ll click add once again, and this time we’ll name our variable WEBSITE_MEMORY_LIMIT_MB. We’ll set the value to 15360, and we'll click apply once again.

Azure Portal - name and value second enviro variable

We’ll then click apply to save our new variables for our web app.

Azure Portal - Apply Enviro Variable

Configuring our Healthcheck

To wrap up, we’ll enable a healthcheck. We’ll find the healthcheck option in our app overview.

Azure Portal - Configure Health Check

We’ll click on not configured, and we’ll check the option to enable a health check. Finally, we’ll set our path to /virus/status.

Azure Portal - Enable Healthcheck and add virus status path

Once we save our healthcheck configuration, Cloudmersive Private Cloud will officially begin deploying.

Confirming a Successful Deployment

Deployment may take up to 15 minutes to complete. To check on the status of our deployment, we’ll head back to our app overview and click on browse.

azure portal - click browse

We’ll refresh our app page until we see the Cloudmersive Private Cloud logo appear. At this point, our deployment is complete and we can begin using it!

Browse - deployment complete

Final Thoughts

If you have any questions for our team after following along with this walkthrough, please feel free to contact your account manager or any member of our support team. They’ll be more than happy to assist you.

600 free API calls/month, with no expiration

Get started now! or Sign in with Google

Questions? We'll be your guide.

Contact Sales