Menu
Coddy logo textTech
terminal iconPart of the Terminal JourneyJourney

Learn Docker & Containers

A free, interactive course on Docker and containers. You practice the core Docker commands on every lesson - docker run, build, images, ps, exec, writing Dockerfiles, volumes, networking - in a guided, simulated terminal, with AI hints when you get stuck and a free certificate when you finish. No Docker install needed - the environment is simulated so you can focus on learning the commands and concepts. Part of the wider Terminal journey, so the command-line context you need is right there.

16,283+ codders enrolled

40 lessons36 challenges195 quiz questions

  • Beginner friendly
  • sparkles iconAI-assisted coding help
  • hint iconHands-on interactive lessons
  • volume On iconAudio narration on every lesson
  • quiz iconQuizzes to test your knowledge
  • certificate iconFree certificate of completion

Syllabus

1 sections1 projects40 lessons36 challenges195 quiz questions

This section is part of the Terminal Journey. The full syllabus has more sections - click any preview below to view it on the Journey page.

  1. Section 1Fundamentals82 lessons
  2. Section 2Version Control58 lessons
  3. Start sectionStartExpandCollapseLearn Docker from the command line: pull and build images, run and manage containers, write Dockerfiles, copy files in and out, and work with volumes and networks.

    Introduction

    2 lessons213

    Images

    4 lessons423

    Running Containers

    5 lessons532

    Managing Containers

    5 lessons531

    Inspecting Containers

    4 lessons423

    Building Images

    4 lessons423

    Files In Images

    3 lessons316

    Copying Files

    2 lessons213

    Volumes & Networks

    3 lessons314

    Greeting App Project

    Project5 lessons17

    Final Challenges

    3 lessons3
What you get
Everything you'll use to learn to code

Learn by Doing

Write real code, query databases, build websites, and master AI prompts. Our interactive lessons cover every skill modern developers need.

playground.js
Code Editor
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Input
"Alex"
Output
"Hello, Coddy! Alex"

Build Your Coding Streak

Stay consistent and watch your progress grow! Track your daily coding habit, protect your streak with freeze days, and earn rewards for showing up every day.

12 days streak

Return tomorrow to keep your streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Double or Nothing

Day 5 of 7

fire Freeze icon

Streak Freeze

2 left

Code Anywhere, Anytime

Take your coding journey on the go! No setup, no downloads - just open and start coding. Available on iOS, Android and Web with 4.9 star ratings.

Python
7Streak
250Score
5Energy
Variables
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
CONTINUE
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Journey
Goals
Leaderboard
Profile
4.9
StarStarStarStarStar
Rating

You're Not Alone in This

Compete on global leaderboards, invite friends to earn rewards, and celebrate each other's wins. Coding is better with friends!

Challenger League
Challenger LeagueTop 7 advance
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconPromotion zoneleaderboard Arrow Up icon

Every way to learn

Read, listen, test yourself, ask the AI, or look up anything you've already covered. Every lesson meets you where you are.

Intro to Variables
Audio

A variable is a named container that stores a value you can reference later in your program.

In Python, you create one by writing the name, an equals sign, then the value you want to store.

The value can change over time - reassigning the name simply points it to a new value.

1xSarah

Prove Your Skills

Earn certificates for every course you complete. Add them to your LinkedIn profile and resume to showcase your coding expertise to employers.

CoddyCertificate of Completion
This certifies thatJohn Doehas successfully completed
PythonPython Fundamentals
Verified
DateJan 2026
LinkedInAdd to LinkedIn

Why learn Docker with Coddy

  • Practice Docker in your browser. No install, no Docker Desktop, no daemon to configure - the lessons run in a simulated Docker environment, so you can start typing commands immediately and focus on what each one does.
  • Core Docker: images vs containers, writing Dockerfiles, layers and caching, port mapping, volumes for persistent data, environment variables, and basic multi-container networking. The Docker skills you'll use every day on the job.
  • AI hints help you understand Docker's commands and output - what docker ps shows, why a layer rebuilds, how a port mapping works - without spoiling the answer, so containers stop feeling like a black box.
  • Free Docker certificate when you finish the section. A credible proof point for any developer or DevOps role, since containers are standard on nearly every modern team.

Frequently asked questions about learning Docker

What is Docker?

Docker is a platform for packaging an application and everything it needs - code, runtime, libraries, settings - into a single portable unit called a container. Containers run the same way on your laptop, a teammate's machine, and a production server, which is why Docker became the standard way to ship and run software.

Do I need to install Docker to take this course?

No. The lessons run in a simulated Docker environment right in your browser - there's no real Docker daemon behind it, no Docker Desktop, and no admin rights required. It's designed to teach you the commands, the Dockerfile syntax, and the underlying concepts so that when you install Docker for real, everything is already familiar. You'll still want to set up Docker locally afterwards to build and run your own images on real projects.

Is this a real Docker environment?

No - it's a guided simulation. The course recreates how Docker behaves so you can learn docker run, build, images, ps, writing Dockerfiles, and the core ideas without installing anything. It's built for learning the commands and concepts, not for running production workloads. Once the concepts click here, the same commands work identically against a real Docker install.

What's the difference between an image and a container?

An image is the read-only template - the packaged filesystem and metadata built from a Dockerfile. A container is a running instance of an image. You can start many containers from one image, the same way you can open many windows of one program. The course makes this concrete by walking you through building images and running containers from them.

Is Docker hard to learn?

The basics - docker run, build, ps, images, stop, rm - are quick to pick up. The harder parts (layer caching, volumes vs bind mounts, networking between containers, slimming down images) take longer. The course introduces them in small, hands-on steps so the commands stop being abstract.

Do I need to know the command line first?

It helps, and the earlier sections of the Terminal journey cover the basics. Docker is driven almost entirely from the command line, so being comfortable typing commands and reading their output makes the Docker section much smoother - but the lessons walk you through each command as you go.
Coddy programming languages illustration

Learn Introduction to Docker with Coddy

GET STARTED