
Organize django apps within a project by creating co_apps, configuring app configs with get_text_lazy for translation, and setting verbose names, then run the server to view the landing page.
Configure a Django logger in settings.py with a verbose formatter, console handler, and root logger at debug and info, then test using a non-existent page.
Learn to build postgres backup and restore toolkit using shell scripts in a docker setup, defining constants dot H for backup paths and messages dot sh with ansi escape codes.
Define a custom user manager in django to use email as the unique login identifier, validate emails, and override create_user and create_superuser for an abstract base user model.
Learn to implement a Django custom user model with a pseudo primary key, using a big auto field for primary key and a UUID for the identifier, enabling email authentication.
Set up nginx in docker, configure an upstream api on port 8000, and implement reverse proxy rules for api v1, admin, doc, static, and media paths using a custom default.conf.
Compare synchronous and asynchronous programming in Django, showing blocking behavior and how Celery enables tasks to run in the background, with Redis as broker and backend, plus Flower for monitoring.
Configure Celery with Redis, Flower, and Django Celery Email in a Django RESTful API project, update requirements files, create salary.py, and enable auto-discovery of tasks during Django startup.
configure celery radius and flower for a django rest api with docker by creating start scripts for celery worker and flower, updating the dockerfile, and rebuilding containers.
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 AT LEAST 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.