No Shortcuts Guide to Django RESTful APIs with Docker

Build a functional API with Docker, Celery, Redis, Flower, Nginx, Nginx Proxy manager, Portainer and more...

Ratings: 4.76 / 5.00




Description

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.


What You Will 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.

Who Should Attend!

  • Intermediate Python Developers curious about how to use Django REST Framework with shell scripts, Docker, Docker, Celery, Redis, Rabbitmq, Flower and Nginx. You will learn everything you need to know to combine these technologies in a production build by leveraging other tools such as Portainer, NGINX Proxy manager among others
  • Intermediate Python Developers with at least 1 year of experience, more is better