Programming · Intermediate
Docker & Containers
The end of "it works on my machine" — what a container actually is, and how to stop fearing deployment.
- Lessons
- 23 lessons
- Total runtime
- 37 hours of video
- Modules
- 6 modules
- Optional lessons
- 18 optional
Free. No account.

About this course
Containers solved a specific, miserable problem. Software depends on the machine it runs on — a library version, an environment variable, a directory that happens to exist — and none of that travels with the code. So it works for the person who wrote it and fails for everyone else, and the resulting afternoon of debugging teaches nobody anything.
A container packages the application together with the parts of the system it needs, so the thing that ran on a laptop is the same thing that runs on the server. That is the entire idea. Everything in this course is a consequence of it: images and layers are how the package is built, Compose is how several packages talk to each other, and Kubernetes is what happens when there are hundreds of them and nobody can start them by hand.
The course is built around Nana's three-hour tutorial, which is unusually good at explaining why each piece exists before showing the commands. Mosh's course covers the same ground with different emphasis and a lot more attention to writing a good Dockerfile, which is where most real Docker time gets spent.
Kubernetes is included but kept in its place. Most people do not need it and adopting it early is a well-documented way to make a simple system complicated. The hundred-second lesson is required so you know what it is; the four-hour course is there for when a real problem asks for it. About four hours required, and around thirty-seven in the pool — three more full courses, a module on writing images properly, and a CI/CD pipeline at the end. Install Docker and run every command — containers are cheap to break and free to recreate, which makes them unusually pleasant to learn by experiment.
What you'll be able to do
- Explain what a container is, and how it differs from a virtual machine
- Write a Dockerfile that builds a small, sensible image
- Run, inspect, stop and clean up containers with confidence
- Use volumes and networks so data survives and containers can reach each other
- Run a multi-service application with Docker Compose from a single file
- Say what Kubernetes does and judge honestly whether you need it
Curriculum
23 lessons · 37 hours
Why Containers
4 lessons · 1h 4m
- 01CompletedDocker in 100 SecondsFireshipVideoThe problem and the shape of the solution, before any commands. Note the distinction from a virtual machine — it is the thing most explanations get vague about.3m
- 02CompletedExploring Docker - Getting StartedTraversy MediaVideoInstalling it and running something immediately. Half an hour to have a container of your own working, which makes the longer courses concrete rather than theoretical.30m
- 03CompletedYou Need to Learn Docker Right NowOptionalNetworkChuckVideoThe most enthusiastic argument for containers on this page, with enough hands-on to have something running by the end. Good motivation if the concept feels abstract.23m
- 04Completed100+ Docker Concepts You Need to KnowOptionalFireshipVideoEight minutes of vocabulary at high speed. Better as a review at the end of this course than as an introduction at the start.8m
Docker Proper
5 lessons · 12h 30m
- 05CompletedDocker Tutorial for BeginnersTechWorld with NanaVideoThe spine of the course. Three hours that consistently explain why a thing exists before showing how to use it — images, layers, volumes, networking and a real development workflow.3h
- 06CompletedDocker Tutorial for BeginnersOptionalProgramming with MoshVideoOptional second pass, with much more attention to writing a good Dockerfile. Worth it because Dockerfiles are where most of your actual Docker time will go, and small mistakes there produce enormous images.2h 10m
- 07CompletedDocker Crash Course for Absolute BeginnersOptionalTechWorld with NanaVideoA newer and shorter version of the three-hour course above from the same teacher. Take this one instead if the longer one is more than you need.1h 8m
- 08CompletedLearn Docker in 1 HourOptionalJavaScript MasteryVideoAimed at application developers containerising their own project rather than at infrastructure people. The most directly useful framing if you have code you want to ship.1h 28m
- 09CompletedComplete Docker Course — From Beginner to ProOptionalDevOps DirectiveVideoNearly five hours, and the most thorough treatment here — networking, volumes, security and registries included. The one to take if Docker is becoming part of your job.4h 44m
Images Done Well
5 lessons · 1h 45m
- 10CompletedDockerfile Tutorial — Docker in PracticeOptionalTechWorld with NanaVideoEach instruction and what it does to the resulting image. Everything else in this module assumes you can read a Dockerfile line by line, and this is where that comes from.24m
- 11CompletedDocker Image Best Practices — From 1.2GB to 10MBOptionalBetter StackVideoLayer caching and multi-stage builds demonstrated by shrinking one image by two orders of magnitude. Seven minutes, and it changes how you write every Dockerfile afterwards.7m
- 12CompletedTop 8 Docker Best Practices for ProductionOptionalTechWorld with NanaVideoRunning as a non-root user, pinning versions, scanning for vulnerabilities — the difference between an image that works and one you would deploy.18m
- 13CompletedGive Me 15 Minutes and I'll Fix Your DockerfilesOptionalDevOps ToolboxVideoA real Dockerfile improved step by step, with the reasoning said out loud. The most practical fifteen minutes here.16m
- 14CompletedDockerfile Best PracticesOptionalDockerVideoFrom Docker themselves, and worth having as the authoritative version of the advice in the shorter lessons above.40m
More Than One Container
3 lessons · 1h 48m
- 15CompletedDocker Compose TutorialProgramming with MoshVideoAn application plus its database plus its cache, described in one file and started with one command. This is the point at which Docker starts saving you real time rather than merely being tidy.20m
- 16CompletedUltimate Docker Compose TutorialOptionalTechWorld with NanaVideoAn hour on Compose alone — networks, volumes, dependencies and environment files. Almost every local development setup is a Compose file, so this earns its length.1h 3m
- 17CompletedMaster Docker ComposeOptionaltypecraftVideoA shorter, more opinionated take, built around one application with a database behind it.25m
When There Are Hundreds
4 lessons · 8h 14m
- 18CompletedKubernetes Explained in 100 SecondsFireshipVideoWhat orchestration means and what problem it solves. Required so that you know what the word refers to; the next lesson is required only if you actually have that problem.4m
- 19CompletedKubernetes Tutorial for BeginnersOptionalTechWorld with NanaVideoOptional, and four hours. Excellent, and genuinely unnecessary for most people — adopting Kubernetes before you need it is a well-documented way to turn a simple system into a complicated one. Come back when something forces you to.4h
- 20CompletedKubernetes Crash Course for Absolute BeginnersOptionalTechWorld with NanaVideoAn hour rather than four, covering pods, services and deployments. The right middle step between knowing what Kubernetes is and committing to the full course.1h 12m
- 21CompletedKubernetes Course — Full Beginners TutorialOptionalfreeCodeCamp.orgVideoA second full treatment with more time spent actually containerising and deploying an application, rather than on the cluster in the abstract.2h 58m
Shipping It
2 lessons · 11h 29m
- 22CompletedMaster Full-Stack Docker & CI/CDOptionalfreeCodeCamp.orgVideoContainers become genuinely useful when something builds and deploys them without you. Four hours from a repository to an automated pipeline.3h 59m
- 23CompletedLearn Docker — Full DevOps CourseOptionalfreeCodeCamp.orgVideoSeven and a half hours placing Docker inside the wider deployment story — registries, environments, monitoring. The furthest this course goes, and only worth it if you are the one running the system.7h 30m
Credits
Every lesson in this course was made by one of these channels. Tubeversity sequenced them; it did not make them. If a course is useful to you, the people below are the ones who earned it.