
Launch and manage dockerized Django apps by mastering docker fundamentals, AWS EC2 setup, Linux basics, Docker Desktop, Docker Compose, and inter-container networking with a Posterous database.
Explore a structured Docker for Python Django developers course with lectures and hands-on assignments. Install Docker desktop, use pipenv with Postgres, and work with Visual Studio to master Docker.
Clone the course repositories from GitHub to download all completed projects, run them for reference, and explore the Docker for Python Django developers course materials.
Learn how to create and activate an AWS account, choose personal, provide payment details, and access free tier services for a year while staying within the free tier.
Launch an EC2 instance by choosing an Amazon machine image (AMI) that includes the required software, such as Java, Python, MySQL, and Docker, and access it via DNS or IP.
Launch your first EC2 Linux instance in seven steps on AWS, choosing AMI, instance type, storage, security group, and keypair, then connect via SSH using the public DNS or IP.
Learn how AWS EC2 uses SSH for secure, port 22 communication between machines with public/private keys stored in the .ssh folder, RSA 2048 encryption, and PuTTY or native SSH clients.
Connect to your AWS EC2 instance using SSH or browser-based options, configure permissions with the pem key, and switch to the root user to run commands.
Install MobaXterm, a free SSH client, and connect from Windows to an AWS EC2 instance using the private key and ec2-user, then run sudo -i.
Master AWS EC2 tips for Django developers, including using the top command to keep sessions alive, managing 30 GB of free storage, and stopping or terminating instances to control costs.
Explore the linux directory structure from root to key folders like bin, boot, etc, dev, home, lib, and var. See how each stores commands, configuration, and libraries.
Learn to create and navigate directories using pwd, ls, mkdir, cd, and cat, explore ls options -l, -a, -R, and perform copy, move, and remove operations.
Install software packages using the M command and Yum, explore repositories, install httpd and curl, start the web server, verify with curl on localhost.
Master the VI editor across command, insert, and execute modes, using i, dd, y, p, and wq to edit, search, and save files.
Learn how Docker images become containers that run your applications across development, test, and production, adhering to the OCI standard for scalable deployment with Kubernetes.
Learn Docker architecture and workflow, including the registry, Docker host, and Docker client, and how to build, pull, run, and push images to deploy containers.
Install Docker on a Linux box, launch an AWS instance, start the Docker daemon, pull images, and run containers such as hello world and Ubuntu to explore Docker basics.
Launch an nginx container with docker run and map port 80 to the host. Access it from your browser via the aws instance and learn essential docker run options.
Learn to clean up docker resources by removing stopped and running containers and images, using docker ps -a, docker rm, and docker rmi, with optional force delete.
Learn to use Docker run with interactive and detached modes and port mapping, manage containers by name or id, and use Docker ps, start, stop, restart, and pause.
Learn how to save a container as a new image with Docker commit, install software like Apache 2 inside Ubuntu, and share or reuse the image, noting Docker files.
Explore how Docker image layers form final images using the overlay storage driver, view layer history with docker history, and locate storage under /var/lib/docker, with read-only layers and writable containers.
Launch a MySQL container with docker run, map port 3306 to 6666, name the container, and set environment variables to create a default database emp_database with a root password.
Discover how bind mounts and volumes persist container data on the host, with bind mounts using any host folder and volumes managed by Docker for durable storage across container lifecycles.
Create and mount a docker volume to a container, enabling host and container file exchange and persisting container state in the mounted volume.
Explore bind mounts by mapping a local folder to a container, using -v or --mount, and verify file changes in the host when files are created inside the container.
Learn to list and inspect docker networks, create a custom network with a defined subnet, then attach a container with a static IP and hostname.
Disconnect a container from its current network using docker network disconnect, then connect it to the bridge network with docker network connect and verify its IP address.
Learn to create Docker images from a Dockerfile, build with Docker Engine, and run containers. Explore base images from Docker Hub and commands like from, copy, environment, run, and expose.
Create your first Dockerfile using CentOS as the base, install httpd, add index.html to the container, expose port 80, and build a tagged image with docker build.
Explore docker image creation with layers and caching, view the history of the final image, and learn to tag and push to Docker Hub.
Install docker desktop and Visual Studio Code with docker plugin to run Django locally. Learn YAML for Docker Compose and use pipe env to create Django projects with virtual environments.
Install Docker Desktop on Windows via Docker Hub, ensure compatibility, and install Hyper-V, Docker Engine, and Docker Compose; start Docker Desktop and verify the version for running future commands.
Learn how Visual Studio Code becomes the Docker IDE by installing the Docker extension, managing containers and images, and working with Docker files, Docker Compose, and Kubernetes YAML.
Install Visual Studio Code and the Microsoft Docker extension to create Docker files, manage images, and work with Docker Compose and YAML for Kubernetes.
Learn YAML syntax for configuring docker compose, Kubernetes, and Ansible, including indentation, lists, maps, extensions (yaml/yml), comments, and validation in VS Code.
Learn to use pipenv to create and manage Python and Django virtual environments, install packages, and lock Pipfile and Pipfile.lock for deterministic, cross-environment builds.
Learn how to download and install postgres on Mac or Windows, launch the Postgres app, and use psql to create databases, users, and tables for CRUD operations.
Learn to build a simple Django web app, configure URLs and settings, test locally, then dockerize with a Dockerfile, build an image, and run a container using Docker Compose.
Create Django projects from command line with pipenv and Django admin commands, dockerise your projects, build docker images, and launch containers with Docker Compose to test; download commands pdf.
Create and run a simple Django project with pipenv, scaffold a project and app, implement a basic view and url, and launch the development server at localhost:8000.
Create a dockerfile using a python base image, set a work directory, copy pip files, install pipenv, copy the app, configure env vars, and build the image with docker build.
Master docker compose to run multiple containers with a single yaml file, defining services, ports, and volumes for a Django app using a Postgres database.
Launch a Django web app with docker compose up, building from the Dockerfile and running python manage.py runserver on 0.0.0.0:8000 with port 8000 published as 10555.
Explore essential docker compose commands, including up, down, ps, logs, restart, and build, to manage services, containers, and images across a project.
Go inside the docker container launched by docker compose, use docker ps and docker exec to access /code, view libraries in /var/lib, and confirm python as the base image.
Mount a volume with Docker compose to sync your project folder into the container, so changes to views.py reflect instantly without rebuilding the image.
Learn to dockerize a Django app with a Postgres database by building a student model, list view, and html template, then run via Docker Compose with two containers.
Set up the student db in Postgres, create a test user with a password, and grant all privileges on the student db.
Create a dynamic Django app connected to Postgres database by defining a student model, building a list view and template, configuring urls, running migrations, and launching dev server at localhost:8000/students.
Add records to the student_app_student table via PSQL, handling camel case table names with double quotes, and verify with the browser refresh as the Django app becomes dockerised.
Create a Dockerfile from scratch for a django project using python 3.9, set unbuffered output, disable bytecode, set workdir, copy Pipfile, install with pipenv, and copy code into the container.
Launch a Postgres container with docker run in detached mode, name db, create a student database and test user; mount volume, publish port, docker compose later, docker exec and psql.
Walk through building a docker compose file for a Django app with a Postgres database, including service definitions, environment variables, a pgdata volume, dependencies, and on-start migrations and server startup.
Create a docker compose file that defines a postgres database service for the web app. Enable host authentication method trust and map a volume to /var/lib/postgres/data.
Learn to configure a Django web service with Docker Compose by building or using an image. Automate migrations and link to a Postgres database, while syncing code with volumes.
Launch multiple containers with docker compose up, using service names as hosts in a postgres and web app setup, then rebuild images and verify migrations at localhost:1055/students.
Access the PostgreSQL container with docker exec, run psql to connect to the student db, insert a record into the student table, and verify the data in the browser.
Define a docker compose restart policy to auto restart containers when they go down, using no, on-failure, always, or unless-stopped. Choose the right value.
Sign up for Docker Hub, then store, tag, and push your Docker images to the central repository, sharing privately or publicly with teams across environments like AWS and Kubernetes.
Learn to push Docker images to Docker Hub by logging in, tagging with your user id, and pushing layers to a public repository for global pull.
Learn to clean up Docker resources by pruning dangling images, stopped containers, and unused volumes and networks with Docker image prune, container prune, volume prune, network prune, and system prune.
Thank you for taking the course and sharing your achievement on LinkedIn. Leave a rating and review to help others decide, and check the bonus lecture for discounted coupons.
Master Docker by Containerizing Django Applications from Development to Production
This course is designed for Django developers who want to master Docker and containerize their applications for consistent development, testing, and production deployments. It is also the perfect next step for students who have completed my Django for Python Developers course.
Docker is one of the most in-demand technologies in modern software development. It allows you to package your application along with all of its dependencies into lightweight, portable containers that run consistently across your local machine, testing environments, staging servers, and cloud platforms.
In this hands-on course, you’ll learn Docker from the ground up while building and containerizing real Django applications.
What You’ll Learn
By the end of this course, you’ll be able to:
Launch AWS EC2 Linux instances for Docker deployments.
Learn the essential Linux commands required for working with Docker.
Install and configure Docker on Linux.
Understand Docker architecture and the container lifecycle.
Master the most commonly used Docker commands.
Learn how Docker image layering works and why it improves efficiency.
Create and manage Docker volumes and bind mounts, and understand their differences.
Create Docker networks and connect multiple containers.
Write Dockerfiles to build custom Docker images.
Build Docker images and run containers from them.
Install and use Docker Desktop for local development.
Use Visual Studio Code and its Docker extension to create, edit, and manage Docker projects.
Build a simple Django web application.
Containerize a Django project using Docker.
Learn Docker Compose and create docker-compose.yml files.
Launch Django applications using Docker Compose.
Build a dynamic Django application backed by a PostgreSQL database.
Containerize multi-container applications with Django and PostgreSQL.
Deploy and manage multiple containers using Docker Compose.
Why Take This Course?
This course focuses on practical, real-world examples rather than just theory. You’ll learn by building complete projects and gain the skills required to confidently use Docker in professional Django development environments.
By the end of the course, you’ll have the knowledge and hands-on experience to package, deploy, and manage Django applications using Docker and Docker Compose, making your development workflow faster, more reliable, and production-ready.