Docker Mastery with Django
Aims of this course
The aims of this course is to:
- learn Docker, Compose and Kubernetes for managing, deploying and testing Django projects
Course Introduction
The Docker Mastery with Django Tutorial Series is designed for students who wants to learn how to use Docker, Compose and Kubernetes while developing with the Django Framework. This course is a great way to start learning how to dockerize Django and JS applications. We start from a beginners level slowly moving into more advanced topics. I have tried to design this course to be modular so that you could also focus in on particular subjects, tutorials or aspects of Docker/Compose/Kubernetes should you prefer this mode of learning.
On this course you will be taught a wide range of skills, here are a few topics that we will be learning:
- How to use Docker, Compose and Kubernetes on your machine for better software building and testing.
- Build and publish your own custom Django images
- Gain the skills to build Django development environments with your code running in containers.
Tutorials
The tutorials, can be found here on our YouTube channel course playlist.
Prerequisites
- Local admin access to install Docker and Python for Mac/Windows/Linux.
- Have a GitHub and Docker Hub account.
Who is this course for
This course tries to cater for many types of learners:
- new developers,
- not so new developers,
- degree students,
- Everyone else who is looking to learn Docker
Course Content
Part-1 How to Dockerize a Django application
Take your first steps with Docker containers. In this tutorial we are going to Dockerize a Django application as a complete beginner to Docker. We first Create a new Django application then Prepare a Django app for Docker building a Dockerfile. A Dockerfile is a text document that contains all the commands a user could call on the command line to assemble an image. Now we go ahead and Build a Docker image and then finally Start a new Docker container to display Django running in our container.
Link to Tutorial https://youtu.be/W5Ov0H7E_o4
Part-2 Build and start a Django project with Docker Compose & work in a Docker Container
In this Docker compose tutorial we start an application with Docker Compose and run it in a container. I will then show you how to configure a volume to build a mirrored folder from your computer and the container. This way you can develop on your computer but host the application in a container. This is a docker compose tutorial for beginners. Take your first steps with Docker containers.
Link to Tutorial https://youtu.be/aMqs_y6dZw4
Part-3 How to configure PostgreSQL or MySQL database with Python Django
In this Docker compose tutorial we start a Django application with Docker Compose and run it in a container. I will then show you how to configure a volume to build a mirrored folder from your computer and the container. This way you can develop on your computer but host the application in a container. Next up we configure first a PostgreSQL database and attach it to Django then build a bassline configuration for MySQL for a Django application. This is a docker compose tutorial for beginners. Take your first steps with Docker containers.
Link to Tutorial https://youtu.be/q75wgk9jVjA
Part-4 Docker Compose | Django | PostgreSQL | Redis & Celery Baseline Configuration
In this Docker compose tutorial we setup Django with Postgres, Redis and Celery. We conclude the tutorial by building a new image, testing the setup by creating a simple Celery task.
Link to Tutorial https://youtu.be/zGtGliXMrPQ
Part-5 How to Dockerize a React application
This is a docker tutorial for beginners. Take your first steps with Docker containers with React. In this tutorial we are going to Dockerize a React application as a complete beginner to Docker. We first Create a new React application then Prepare a React app for Docker building a Dockerfile. A Dockerfile is a text document that contains all the commands a user could call on the command line to assemble an image. Now we go ahead and Build a Docker image and then finally Start a new Docker container to display React running in our container.
Link to Tutorial https://youtu.be/xtllpDEOw4w
Part-6 Docker | Towards serving React (Nginx) with Django API (gunicorn)
This is a docker compose tutorial we take your first steps creating a deployment setup with React and Django running on a Nginx server, supported with gunicorn for Django. Having already created a basic React and Django application, see the link below for repositories, we first build the docker files needed for both Django and React before then building a docker compose file. This tutorial gives you a better understanding of docker volumes and bind mounts as we look at using both tools. We then build our nginx configuration to serve react from the root directory. Finally we expand the nginx configuration to include a proxy to the Django API.
Link to Tutorial https://youtu.be/e63EBEFJkH0
Part-7 Docker | RabbitMQ | Celery | Quick-Start guide
Welcome to another Docker tutorial. The Windows platform does not support easy setup and configuration of Redis or RabbitMQ. This tutorial takes you through the quick steps of setting up RabbitMQ with Docker for your Django Celery applications. The end result, RabbitMQ is severed from a Docker container and can be used for any of your Django apps locally.
Link to Tutorial https://youtu.be/t2ZoVlqlQyA
Part-8 Docker | PostgreSQL | pgAdmin and Custom Network Configuration
Welcome to another Docker-Compose tutorial. The Windows platform does support PostgreSQL, but it can be much more convenient to install Postgres and manage PostgreSQL with pgAdmin in containers. In this tutorial we create a docker-compose file to configure Postgres and pgAdmin allowing any other application, in this tutorial Django to connect to it. We go the extra step of configuring the network, assigning static IP addressed to the containers.
Link to Tutorial https://youtu.be/_oqSGs3rrf8
Community Driven Content
I activity try and promote feedback to taylor courses to your needs and wishes. Here is a list of features requested by community. If you would like to request any other feature not listed here - please visit our YouTube channel and make a comment.
Next Planned Tutorials
- Deploying Docker/Django to Heroku
Contributing
This project welcomes contributions and suggestions. At present, we are not accepting any code contributions. Please visit our YouTube channel to make tutorial suggestions.
Instructor
Zander, the founder of Very Academy has over 20 years of development and educational lecturing experience. He is now focused on developing free technical courses and resources on a range of subjects.