Can packaging improve Django deployments?

Markus Zapke-Gründemann

Playlists: 'djangocon2018' videos starting here / audio / related events

How can packaging Django projects make deployments easier, faster and more reliable?

Deployments of Django projects can be a challenging task. Beside the Python source code itself you usually have to handle a lot of other stuff:

* Installing Python dependencies
* Shipping JavaScript code and installing it's dependencies
* Compiling SCSS to CSS
* Collecting static files
* Building documentation
* Compiling translations
* …

And of course you want a deployment approach that is independent of a specific hosting solution.

Also you have to think about the scalability of your deployment when the number of servers you operate increases.

This usually means that `git pull` is not the best way to deal with these tasks.

So I will discuss different ways to package your Django project like

* Wheels
* JavaScript packages
* Operating system packages
* Containers

Some of these concepts will hopefully help you to make your deployment process easier, faster and more reliable.