Skip to main content

Deploying a Django Web Application

You have already learned enough about Django: It's time to bring your first project to the web! To do this, you must have a hosting service where one or more Python interpreters will run the code of your Django project. Typically these services provide virtual machines with certain capabilities (such as amount of RAM, disk space, network transfer, etc.) and a fixed IP address to which a domain is then assigned. The complexity of deploying a Python web application lies mainly in setting up the necessary software to run such an application: operating system (usually some Linux distribution), web server (Apache, NGINX, IIS, etc.), database, mail server, etc. All these questions are out of the scope of this tutorial. Instead, you will learn how to use a free, managed service for hosting web applications written in Python called PythonAnywhere to deploy Django applications in production.