Installing Docker

Intermediate
4m
24,072
4.8/5

Welcome to Introduction to Docker! In this Lesson, you'll learn the foundations of using Docker. You'll learn about images and containers, port mapping, Docker networks, volumes, tagging, and more. By the end of the Lesson, you should be comfortable with the basic functionality of Docker.

Containers have existed in some form for a while now. However, it was Docker that brought them into the mainstream. And Docker containers have become synonymous with the word "container" because of their popularity. Docker containers have made it easier for many developers and operations teams to build, ship, and deploy their code.

While Docker containers may only be a transitional technology between virtual machines and unikernels (or something similar), they currently remain one of the more effective ways to ship code, which is why having an understanding of Docker has become almost a requirement for technical engineers.

Learning Objectives

  • You should understand what Docker is
  • You should understand how to create Docker images
  • You should understand how to map ports between Docker and the Host OS
  • You should understand the basics of Docker networking
  • You should understand how to use volumes for persistent storage
  • You should be able to tag images

Intended Audience

  • DevOps Engineer
  • Developer
  • Site Reliability Engineer
  • Operations Engineer

Resources

The Lesson assets
https://github.com/cloudacademy/introduction_to_docker

Docker installation instructions
https://docs.docker.com/engine/installation/

If you want to use Vagrant
https://www.vagrantup.com/docs/index.html

The IDE used in the Lesson
https://code.visualstudio.com/

A Dockerfile reference
https://docs.docker.com/engine/reference/builder/

Tooling for the Go language used in the demos
https://golang.org/

About the Author
Students
109,390
Labs
37
Courses
50
Learning paths
58

Ben Lambert is a software engineer and was previously the lead author for DevOps and Microsoft Azure training content at Cloud Academy. His courses and learning paths covered Cloud Ecosystem technologies such as DC/OS, configuration management tools, and containers. As a software engineer, Ben’s experience includes building highly available web and mobile apps. When he’s not building software, he’s hiking, camping, or creating video games.

Covered Topics