Introduction to Docker

Learn what companies are using to create portable development and deployment environments

Development and Deployment isn't easy - Reduce the headaches with Docker

Docker is one of today's most in-demand technologies for local development and production deployment. This online course offers an introduction to Docker in the context of developing web applications. We'll demystify Docker by using it to run applications locally and on a server.

What is Docker?

Docker is an application that helps developers setup, share, and run other applications, like web apps, database servers, and more. Docker runs applications inside software containers, which provide a lightweight, isolated, and repeatable environment for running applications.

What are the benefits?

Using Docker means...

  • Simple and fast: Docker provides the isolation and consistency commonly found in Virtual Machines (VMs), only without a lot of overhead.
  • Increased productivity: Docker provides a wide range of tools to manage images and containers.
  • Automation: Think about how much time is spent setting up installing dependencies, such as Python or Java. Or setting up configuration. Now think about how many steps are repeatable on different machines. With Docker, you can define all these within a container and automate the process of setting it all up.

What will you learn in this course?

This introductory course will get you up-and-running with Docker quickly. Much of the content will be specific to web development, but the skills can be applied to other areas as well, so don't fret! We'll cover:

  • The concepts behind Docker
  • Why Docker is beneficial to web developers
  • How to manage Docker images and containers
  • How to incorporate Docker into web applications
  • Deploy Docker on Heroku, a Platform-as-a-Service (PaaS) provider.
  • Coming soon: Deploy Docker (nearly) instantly using
  • Coming soon: Deploy Docker on AWS using the Amazon EC2 Container Service (ECS)

Your Instructor

Brian Hague
Brian Hague

Brian is a Software Engineer specializing in web development. He works at Concur Technologies in Bellevue, WA, where he uses Docker, Node, React, and Redux to build features for the Concur Developer Center. Previously, he taught web development courses at General Assembly and provided course mentorship at Florida State University.

Brian's teaching philosophy revolves around hands-on learning with practical applications and giving you the relevant information needed to ramp up quickly and efficiently in various languages, frameworks, and technologies.

Frequently Asked Questions

When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish. Did we mention it's free?
Who is this course for?
This course is for people who want a quick and practical introduction to Docker that explains the "how" and "why". You'll be doing a lot of hands-on learning throughout the course, and we'll focus only on the necessary components to get started with Docker.
Are there any prerequisites for the course?
Yes. Command line knowledge is highly recommended. Some familiarity with Node is also helpful, but not required.

Get started now!