Learn Docker with More Hands-On Labs

Docker Labs is a rich resource for technical folks from any background to learn Docker. Since the last update on the Docker Blog, three new labs have been published covering Ruby, SQL Server and running a Registry on Windows. The self-paced, hands-on labs are a popular way for people to learn how to use Docker for specific scenarios, and it’s a resource which is growing with the help of the community.

Docker hands-on labs

New Labs

  • Ruby FAQ. You can Dockerize Ruby and Ruby on Rails apps, but there are considerations around versioning, dependency management and the server runtimes. The Ruby FAQ walks through some of the challenges in moving Ruby apps to Docker and proposes solutions. This lab is just beginning, we would love to have your contributions.
  • SQL Server Lab. Microsoft maintain a SQL Server Express image on Docker Hub that runs in a Windows container. That image lets you attach an existing database to the container, but this lab walks you through a full development and deployment process, building a Docker image that packages your own database schema into an image.
  • Registry Windows Lab. Docker Registry is an open-source registry server for storing Docker images, which you can run in your own network. There’s already an official registry image for Linux, and this lab shows how to build and run a registry server in a Docker container on Windows.


Some of the existing labs are worth calling out for the amount of information they provide. There are hours of learning here:

  • Docker Networking. Walks through a reference architecture for container networks, covering all the major networking concepts in detail, together with tutorials that demonstrate the concepts in action.
  • Swarm Mode. A beginner tutorial for native clustering which came in Docker 1.12. Explains how to run services, how Docker load-balances with the Routing Mesh, how to scale up and down, and how to safely remove nodes from the swarm.

Fun Facts

In November, the labs repo on GitHub was viewed over 35,000 times. The most popular lab right now is Windows Containers.

The repo contains 244 commits, has been forked 296 times and starred by 1,388 GitHub users. The labs are the work of 35 contributors so far – including members of the community, Docker Captains and folks at Docker, Inc.

Among the labs there are 14 Dockerfiles and 102 pages of documentation, totalling over 77,000 words of Docker learning. It would take around 10 hours to read aloud all the labs!

How to Contribute

If you want to join the contributors, we’d love to add your work to the hands-on labs. Contributing is super easy. The documentation is written in GitHub flavored markdown and there’s no mandated structure, just make your lab easy to follow and learn from.

Whether you want to add a new lab or update an existing one, the process is the same:

  • fork the docker/labs repo on GitHub;
  • clone your forked repo onto your machine;
  • add your awesome lab, or change an existing lab to make it even more awesome;
  • commit your changes (and make sure to sign your work);
  • submit a pull request – the labs maintainers will review, feed back and publish!


0 thoughts on "Learn Docker with More Hands-On Labs"