hands-on lab

Getting Started with Docker on Linux for AWS

Up to 2h
You can pause this lab for up to 1h
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.


Docker has taken DevOps by storm and ignited interest in containers. Containers offer many of the benefits of virtual machines but in a much more efficient, less resource-intensive system. Containers allow you to package up an application in an isolated environment that can be executed across machines in a reproducible manner. No more "well, it worked on my machine" syndrome when you leverage Docker for your application development and deployment.

In this Lab, you will get up and running with Docker on Linux using an AWS virtual machine. You will work with images from the public Docker registry, run a handful of containers, and create your own image from which to create containers. 

Lab Objectives

Upon completion of this Lab you will be able to:

  • Install Docker on Linux using an AWS virtual machine
  • Add a user to the Docker group
  • Find and use images from the public Docker Registry
  • Build your own images using Dockerfiles

Lab Prerequisites

You should be familiar with:

  • What containers are
  • Working at the command line in Linux

Lab Environment

Before completing the Lab instructions the environment will look as follows:


After completing the Lab instructions the environment should look similar to:



April 5th, 2023 - Resolved an issue that caused the Lab to fail to set up on rare occasions

February 22nd, 2022 - Updated requirements file

December 14th, 2021 - Updated Dockerfile to shorten the path to the source file

April 16th, 2021 - Moved validation checks to the most relevant Lab step for more immediate validation feedback

January 5th, 2021 - Updated code snippets

July 9th, 2020 - Migrated to EC2 Instance Connect

July 3rd, 2019 - Added an additional custom validation Lab step to check the work performed in the lab

June 27th, 2019 - Added a custom validation Lab step to check the work performed in the lab

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

About the author

Logan Rakai, opens in a new tab
Lead Content Developer - Labs
Learning paths

Logan has been involved in software development and research since 2007 and has been in the cloud since 2012. He is an AWS Certified DevOps Engineer - Professional, AWS Certified Solutions Architect - Professional, Microsoft Certified Azure Solutions Architect Expert, MCSE: Cloud Platform and Infrastructure, Google Cloud Certified Associate Cloud Engineer, Certified Kubernetes Security Specialist (CKS), Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), and Certified OpenStack Administrator (COA). He earned his Ph.D. studying design automation and enjoys all things tech.

LinkedIn, Twitter, GitHub

Covered topics

Lab steps

Logging In to the Amazon Web Services Console
Connecting to the Virtual Machine using EC2 Instance Connect
Installing Docker on Amazon Linux
Using Docker without Root Permission on Linux
Getting Docker Help from the Command Line
Running Your First Docker Container
Creating Your First Docker Image