
Discover how Docker works, learn to run containers, build images, and use networking with Docker Compose and a private registry, then explore Docker Swarm and Kubernetes through browser-based labs.
Docker packages each component—node.js, MongoDB, Redis, and Ansible—into its own container on a single VM, solving the matrix from hell by ensuring end-to-end compatibility across OS, libraries, and dependencies.
Learn how Docker containers share the Linux kernel to run various Linux-based distros on a single host, and how Docker packages applications to run anywhere without true virtualization.
Contrast virtual machines and Docker containers: containers share the host OS and libraries for lightweight, fast boot, while VMs run separate OSs with heavier overhead and full isolation.
Install Docker Engine on an Ubuntu Linux VM, verify prerequisites, install via the apt repository, start Docker, and run the Hello World image to confirm.
Focus on the course labs and videos to gain the necessary knowledge and skills, avoiding premature local setups until the course provides the right resources.
Explore docker basics by running your first container, pulling images from Docker Hub, and using Alpine and Nginx to understand base images, web servers, and container workflows.
Explore docker image and container management by listing images, freeing space with docker rmi after removing containers using an image, and cleaning up with docker system prune.
Learn how Docker handles input and terminals with interactive mode (-i) and pseudo terminal (-t). Use -i, -t, or -it strategically for prompts, piping data, and colored output inside containers.
Master port mapping in Docker by exposing container ports to the Docker host, enabling access via the host IP on mapped ports and supporting multiple apps on distinct ports.
Persist data in Docker by mapping the host directory /opt/data to /var/lib/mysql, so data survives container removal; use -v or --mount, with the latter clarifying the mount type.
Learn to create your own docker image for a Flask web app, using a Dockerfile, base Ubuntu, environment variables, and entry point, with layered caching and pushing to Docker Hub.
Identify four problems with the traditional docker builder—re-downloading packages, secrets leaking in image metadata, architecture lock-in, and sequential stages—and anticipate how docker fixes them.
Configure a dockerized Python app with environment variables. Use docker run -e to set colors and docker inspect to view container environment variables for different containers.
Learn to orchestrate multi-service applications with Docker Compose, using YAML configuration to connect Redis, PostgresQL, and microservices via Docker networks on a single engine.
Learn how the Docker engine runs applications in isolated containers through the daemon, REST API, and CLI, with three handoffs to container D and run C implementing the OCI runtime.
Learn how docker stores data on the local file system under /var/lib/docker with image and container layers, writable layers, and volumes, using copy-on-write and mounts.
Run linux containers on macOS with Docker Desktop, which uses Apple's virtualization to host a linux VM on intel and apple silicon. Learn multi-arch support, Rosetta 2 translation, and licensing.
Explore container orchestration as a solution to run containers across multiple hosts in production. Learn how it enables health checks, scaling, load balancing, and shared storage.
Learn Docker Swarm basics, forming a multi-host cluster with a manager and workers, initializing with swarm init, joining workers, and using Docker service to deploy replicas across nodes.
Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications, whether on laptops, data center VMs, or the cloud.
This course introduces Docker to an Absolute Beginner using really simple and easy-to-understand lectures. Lectures are followed by demos showing how to set up and get started with Docker. The coding exercises that accompany this course will help you practice Docker commands, develop your own images using Dockerfiles, and practice Docker Compose. You will be developing Docker files for different use cases right in your browser. This way, you don’t really need to have your own environment set up to get some hands-on practice. The coding exercises will validate your commands and Dockerfiles and ensure you have written them correctly.
And finally, we have assignments to put your skills to the test. You will be given the challenge to solve using the skills you gained during this course. This is a great way to gain real-life project experience and work with the other students in the community to develop a Dockerfile and get feedback for your work. The assignment will push you to research and develop your own Docker images.
Our tools, courses, and resources will help you improve your Docker skills and help you gain a true understanding of the program.
Disclaimer
This course requires you to download Docker Desktop from the official website. If you are a Udemy Business user, please check with your employer before downloading this software to ensure it aligns with your organization’s internal policies.