Deploy a Production Application Using PaaS Services on Azure

In this part of the project, we deploy an e-commerce demo application to production using Platform as a Service on Azure.

Approach

Our demo application provides a REST API and is written in Python using the Django REST Framework. The application is backed by a relational database for which we have chosen MySQL for the database server. Given these technology choices, we will need a web server, a database server, and appropriate connectivity between them.

Solution Features

The solution provided by this exercise has the following features:

  • Azure App Service for the web server
  • Azure Database for MySQL for the database server
  • No virtual machines needed
  • Virtual networking to connect the platform services together
  • No direct public access to production VNet
  • Deployment will be from our cloud PC, which is also on a VNet
  • VNet peering to provide access to production VNet from cloud PC
  • Private DNS zone to allow hostname references within the private network

How Do The Pieces Fit Together?

The following diagram illustrates how the components of our deployment fit together:

Steps

Please follow these steps to complete the project:

  1. Provision the Production VNet
  2. Provision the Production Database and Peer Your VNets
  3. Provision and Connect an AppService Web Server
  4. Install Application Code and Populate the Production Database
  5. Deploy a Django Application to Azure App Service
  6. Troubleshooting Your AppService Deployment