Updated for 2022-23: Create Docker containers & multi-container applications. Learn Compose, Networking, Swarm, & more!
2022 Q4 (October - December) Update:
The course has been entirely re-recorded, and is completely new as of Q4 2022. So when you take this course, you can have total confidence that your experience will be modern, smooth, and full of relevant material.
Throughout this course's lifetime, many students have highlighted the thorough, yet easy-to-follow and precise journey through this course on Docker:
"Love Love Love David's courses. I'm a seasoned programmer just looking to refresh my skills and he does such a great job. Easy to listen to and keeps his courses moving along and focused! Great job!!!"
"Highly recommended course. It covers all basic fundamentals to high level of project requirements based on Docker container technology."
"Thank you teacher, I learned not only about docker but also many useful command and development tips. I recommend this lecture to every developer who are interested in virtualization, CI/CD, networking, linux system, etc."
"The course was thorough and was easy to follow. I was able to complete the projects and it was exciting to see the results. Thank you!!"
"Great course!! Instructor was very engaging and made the concepts interesting by giving apt examples. THANK YOU"
The re-recorded and revised material contains the original course journey and more. None of the value of the previous course has been lost. But when I discovered that a couple old videos demonstrated technologies that had gone out of date, I decided to rejuvenate not only those videos, but the entire course too. So with the revised material, you'll find:
More in-depth explanations of key topics like docker containers, images, docker compose, networking, docker swarm, dockerhub, and continuous development.
Entirely new material, including a new set of videos on continuous development with Github Actions and Amazon ECR.
Extra videos for Windows students in particular. A lot of the course happens on the command line. Most of the course is recorded on MacOS which works well for MacOS or Linux-based students. But wherever necessary, I also recorded videos on a Windows machine for anyone on windows!
An extra reference content section, helpful for anyone wanting to go in depth on some of the technologies that appear in the course, such as JavaScript. These topics are worth discussing, but don't fit naturally within a Docker-focused section.
100% up-to-date material - the journey you follow will not have any bugs or errors. I will also be available to help answer questions, or re-record/edit/update content if necessary.
*** Main description: ***
Docker is an open platform that lets you package, develop, run, and ship applications in environments called containers. Docker has completely changed the landscape of the software engineering industry. For developers, Docker is a must-know. For enterprises, Docker is a must-use.
Containers are revolutionary because they allow you as the developer to work with applications without the hassle of installing extra dependencies. With Docker, your coding environment will immediately set up. That way, you can spend your time focusing on the code that truly matters to you, your team, and your organization.
Docker and containerization also lies at the heart of development operations. Development engineers have the skills to both create and deploy applications. These kind of engineers hold a high value in the job market, and average higher salaries than software engineers. So knowing Docker will increase your DevOps skills and open doors for you.
How is this course designed?
As a software engineer with 5+ years of industry experience, I designed this course to teach you the same docker and container-related concepts that I apply when working on million dollar applications, all the time. This is a project-based course. So, you will become familiar with the main Docker commands as you build various applications with containers and images.
Some of the main course topics:
Run your own containers on the command line with Docker.
Build your own container images with Dockerfiles.
Persist data across containers with mounts.
Compose multi-container applications with Docker Compose.
Update containers dynamically with volumes.
Create private networks for Docker containers.
Create a multi-node cluster with Docker Swarm.
Set up a continuous deployment workflow with the automatic building of Docker Images with Github Actions and Amazon ECR.
On top of that, Docker gives us the power to work in almost any environment. Therefore, in our exploration of Docker, we’ll even get exposure to Node.js, Express.js, PHP, Python, Flask, PostgreSQL, and more.
So what are you waiting for? Let's get started coding!
Subscribe here to get interesting stuff and updates!