Thatcher Peskens

Introducing an Interactive Docker tutorial

Thatcher Peskens

Today we are happy to announce the Docker Interactive Tutorial: A fully interactive training program for users to get familiar with the Docker commandline. It helps novice users to understand some of the basic concepts of Docker and master the basic commands. As of now, the tutorial is available here.

learn docker screenshot

Screenshot of the Docker Interactive Tutorial

A little on the tech behind it

I spent some time considering what approach to take for developing this tutorial. First off, the terminal is based on Jakub Jankiewicz’ excellent JQuery Terminal. That was a pretty easy choice. It provides a terminal emulator with a good linux-shell-like look and feel. Then there are basically two options: Either connect to a ‘real’ shell running on some host to parse the commands and return the output over http/websockets, or fake the entire experience in JavaScript.

Now, for pretty much every application the first option is great, especially in combination with Docker. Docker would provide an excellent jailed environment to run a shell, and other programs in, and you could easily create a new Docker container for each tutorial user, expose a port and have the client connect to that. However… unfortunately, Docker itself cannot run inside of Docker (today). And even when it does, it will probably involve creating some security vulnerabilities. So, instead I have chosen to completely emulate the Docker CLI. Luckily CoffeeScript makes writing javascript much less messy, and allows things like multi-line comments. If you are curious, you are free to have a look at the source on


When you check it out, please feel free to use the built-in feedback widget to send love, complains and any issues you might have.

Happy learning!

About Thatcher Peskens

Thatcher Peskens is User Experience Designer and front end developer at dotCloud. He comes from the Netherlands and with a background in industrial design, web development and experience in web hosting he works on making everything user facing a pleasure to use.

Continue reading...


5 thoughts on “Introducing an Interactive Docker tutorial

  1. Shiny! If you were to want to rewrite this to go the other (sandboxed-live-implementation) route at some point, might be of some interest or inspiration — it uses KVM’s support for using a read-only backing store and a pre-booted memory image to provide an IRC bot that executes arbitrary shell commands (albeit with no network connectivity, and all state changes thrown away after each command).

  2. Is the online tutorial removed from docker website? I can’t seem to find it.

  3. Unfortunately they have removed it and it’s no longer available. It’s a shame since it was a nice tutorial!

    We could use another interactive one on Dockerfiles.

  4. Will this be brought back?

Leave a Reply