Before jumping in to Docker, let's look at some prerequisites and what you can expect from this course.

What to expect

This course is an interactive version of my book, Learn Docker - .NET Core, Java, Node.JS, PHP or Python.

I tried my best to keep this course small so that you can learn Docker quickly without getting lost in minute details. If you are looking for a reference course with answers to the questions you may have within the next years of your Docker practice, you’ll find heavy books for that.

My goal is to quickly provide you with the tools you need to create and run your first containerized application using Docker, then be able to look for more by yourself when needed. While some authors seem to pride themselves on having the longest course, in this series, I’m glad I achieved the shortest possible course for my purpose. I tried my best to keep all of what I think is necessary, based on my 16-years of teaching.


To get the most out of this course, you must have basic experience creating applications with one of the following technologies: .NET Core, Java, Node.JS, PHP, or Python.

How to read this course

This course hopes to make you productive as quickly as possible. For this, we’ll use some theory, several demonstrations, and a few exercises.

Exercises appear as follows:

svg viewer
  • Do it yourself: Time to grab your keyboard and code away!

Tools you need

The only tools you’ll need to work through this course are the following:

  • A Windows, Linux or Mac machine that meets the specifications for Docker Engine or Docker Desktop

  • A GIT client

  • A text editor

Source code

All of the source code for the demos and do-it-yourself solutions is available at It can be downloaded as a ZIP file, or if you installed GIT you can type:

git clone

Without further ado; let’s get started.