Everything you need to deploy robust, secure Django applications.
Django is a great web framework. It allows developers to build applications quickly, with little boilerplate. When it comes to deploying your application however, there are so many competing methods and approaches that it can be hard to find a reliable solution.
You might be wondering:
- What web server should I use?
- What is the best way to manage production settings?
- How do I secure my application?
- Is there a way to implement zero-downtime deployments?
- How should I deploy and serve my static files?
This book aims to address these questions, and many more, by walking you through a tried-and-tested strategy for deploying your Django application. It will teach you not only how to deploy and configure your application, but also understand the rationale behind each step so that you can adjust the deployment to meet your own needs.
In Deploying Django you will learn:
- The fundamentals of web application security and how they apply to your Django application
- How to implement zero-downtime deployments
- Best practices for deploying Django with Nginx and uWSGI
- How to automate the deployment of your application using Ansible
- The easiest way to configure and use HTTPS for improved security
- Best practices in relation to on-going monitoring and maintenance of your application
- How to package and distribute your application for installation on a server
- Part 1 - Concepts and architecture
- Web application security
- Evaluating your security profile
- Logging and monitoring
- Part 2 - Preparing for deployment
- Server configuration
- Django configuration
- Nginx configuration
- Postgres configuration
- Part 3 - Streamlining your deployment
- Zero-downtime deployments
- Part 4 - Optimizing your deployment
- High availability
- Disaster recovery
- Staying up to date