Installation

Video Tutorial

Select one of the options below to install Cosmos on your Azure account at no initial cost. Be aware that charges may apply for resources deployed in Azure for your Cosmos website. If you wish to test Cosmos without financial commitment, you can obtain a free Azure account for 30 days.

This guide outlines the steps for installing a "base" version of Cosmos. This initial setup is ideal for a small business or personal website, with operational costs starting around $15 per month. This setup can be scalled “up and out” to handle enterprise-level capacity.

Should you wish to bypass the instructions below and proceed with the installation, please select one of the following options:

Architecture Overview

The base installation sets up all the necessary components for Cosmos within an Azure cloud account. If you don't already have an account, you can sign up for one that comes with a $200 credit for the first 30 days, which is ample for Cosmos needs.

The basic installation comprises an App Service Plan with two Web Apps, a “serverless” Azure Cosmos DB Account, and an Azure Storage Account. This configuration integrates with two external services. The website and the editor Web Apps are Docker containers deployed from Docker Hub, while email services are primarily utilized for user account management and notifications.

App Service Plan

Two options are available for the base installation. The first option is choosing the type of App Service Plan and the second is selecting an email service provider.  Of the two, the App Service Plan has the most impact on initial cost. Guidance on each choice is provided below.

An Azure App Service Plan is a set of compute resources for a web app to run. When you create an App Service Plan, you define the region (e.g., West US, East US) and the operating system (Windows or Linux) for the plan. The plan determines the amount of resources (like CPU, memory, and storage) available to your app and how it scales.

Here are some key aspects of an App Service Plan:

  • Compute Resources: Defines the number and size of VM instances your app runs on.
  • Pricing Tiers: Offers different tiers (Free, Shared, Basic, Standard, Premium, and Isolated) that provide varying levels of performance, features, and scalability.
  • Scaling: Allows you to scale your app up or down by changing the pricing tier or the number of VM instances.
  • Features: Higher tiers offer more features like custom domains, SSL certificates, autoscaling, deployment slots, and backups.


For example, the PremiumV3 tier provides faster processors, SSD storage, and higher memory-to-core ratios, making it suitable for high-performance applications2.

Email Service Provider

Note: If you plan on installing Cosmos without an Email service provider, you can skip this section and click this link to install Cosmos without Email integration.

Cosmos utilizes external email services to manage routine user account maintenance tasks such as email account validation, password recovery, and system alerts for administrators. Cosmos offers three alternatives for this purpose, and one must be configured before deploying Cosmos.

Azure Communication Services

Azure Communication Services (ACS) is a set of cloud-based communication APIs provided by Microsoft Azure. These APIs allow developers to integrate various communication features into their applications without needing deep expertise in communication technologies.

Here is a video that shows how to create an Azure Email Communication Service for Cosmos.

In the above video you will have saved two pieces of information: the “from” email address of your Email service, and the connection string.

With the connection string and “from” email address in hand, click the button below to install Cosmos with Azure Email Communication Services.

Deploy to Azure

Twilio SendGrid Email Service

Cosmos also works with Twilio SendGrid. You can sign up for a free account with no credit card required.

Once you have setup your account, generate an API Key. It is best to have a key with the ability to send email, but do nothing else.  This API key will be used during the Cosmos install.

When setting up your SendGrid account, copy down the “from” email address that is setup for your account. This will be needed for the installation.

Now that you have an API key and “from” email address, click the button below to install Cosmos with SendGrid.

Deploy to Azure

Post Installation Steps:

By default, SendGrid restricts API access by IP address.  This means you may not be able to use the SendGrid service until you add the “outbound” IP addresses from your website to SendGrid. Here is how to do this:

  1. Using the Azure Portal, find the “editor” web app for your website. Usually the name starts with the letters “edi”.
  2. Copy the “Outbound IP addresses” shown on the overview page.
  3. Add these IP addresses to your SendGrid account.

SMTP Email Service

Any SMTP email service that necessitates a username and password, and permits connections via TLS (SSL), can be integrated with Cosmos.  Capture the following information from your SMTP service for Cosmos:

  1. Host name
  2. SMTP port number
  3. Username
  4. Password
  5. A “from” Email address.

Click the button below to install Cosmos with an SMTP email service.

Deploy to Azure