April 7, 2017 @ 11:30 a.m.

Deploying Django with Ansible

Many people seem to think that configuration management systems like CFEngine, Puppet, Chef, Salt and Ansible are worth using only in large deployments where many machines have identical setup. This is not true; even on single server setups the benefits are important. Setting up a server programmatically rather than interactively allows you to know exactly what you have done, to reuse the setup when setting up another server, to save time, to version control the setup, and to document it in a convenient manner.

In this workshop each attendee will be given a brand new virtual server with the task of deploying a given Django project. I will introduce Ansible and give instructions so that each one will deploy the project with Ansible while building the deployment repository.

I assume you know nothing about Ansible, but that you can already deploy a Django project on Debian or Ubuntu. We will be using nginx and Gunicorn, but if you only know Apache and mod_wsgi it's not a deal breaker. You will work on your own laptop.