What you'll learn:
- You will learn how to use Docker with Celery, Redis, Flower with Django REST Framework
- You will learn how to use Reverse Proxies with NGINX and NGINX Proxy Manager
- You will learn how Secure an API with HTTPS with SSL Certificates from Letsencrypt
- You will be Introduced to API testing with Pytest using factories and fixtures
- You will learn how manage multiple Docker containers with Portainer
- You will learn how to use shell scripts to automate and monitor processes
- You will learn about UUID's (advantages and disadvantages) and how pseudo primary keys solve this.
- You will learn how to implement Asynchronous tasks with Celery and Redis
- You will learn how to Serve static and media files with Nginx and Whitenoise.
- You will learn how implement Asynchronous tasks monitoring with Flower
- You will learn how to work with Postgres within a Docker container, including how to perform backups using shell scripts.
- You will learn how to setup an Ubuntu server, running Django over a Domain name.
- You will learn how to use makefiles to make working with Docker easier.
- Python Test coverage using coverage
- Logging in Django
- Token Based Authentication
- Working with emails using Mailhog in development and Mailgun in production.
Hi, welcome to this course on building a production ready, detailed Django REST API, running on a web server powered by NGINX, on a custom domain name and served securely over HTTPS with SSL Certificates from Letsencrypt.
This course is NOT for absolute beginners.
We shall achieve our goal by leveraging tools such as Docker, Celery, Redis, Flower, Nginx, Nginx Proxy manager, Portainer, shell scripts and more.
This course is targeted at those with ATLEAST 6 months of web development experience, but more is better. Before beginning, you should have some familiarity with the following concepts, in as much as I will try to explain everything.
The concepts we shall cover include:
Docker and running multiple containers
2 Securing a Django REST API with HTTPS using SSL Certificates
REST APIs with Django and Django Rest Framework
Class Based Views.
Shell Scripting.
Asynchronous tasks with Celery and Redis
Asynchronous tasks monitoring with Flower
Introduction to API testing with Pytest using factories and fixtures.
Token based authentication
Working with email in development with Mailhog and in production with Mailgun
Python Test coverage
Serving static and media files with NGINX and whitenoise
Makefiles and how they make working with Docker easier.
All this shall be covered step by step, so that you can leverage the skills you learn in this course to build even bigger and better applications at scale.
My Hope is that you shall gain immense value from this.