Description
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.
Markus Zapke-Gründemann