Docker Up and Running

Learn to build, deploy, and run applications inside portable software containers

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 implemented with Virtual Machines (VMs), only without all the overhead.
  • Increased productivity: Docker provides a wide range of tools to manage complex application stacks.
  • 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 "Dockerize" an existing web application (we'll use NodeJS applications as examples)
  • Running multiple containers with Docker Compose
  • Using Docker for local development
  • Deploy Docker on a variety of cloud providers, like Heroku,, and Amazon EC2 Container Service (ECS)

Your Instructor

Brian Hague
Brian Hague

Brian is a software engineer specializing in web development. He works at SAP Concur 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 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 recommended, but not required if you're willing to pick it up as you go along. Some familiarity with Node is also helpful, but not required. You'll also need a text editor.

Get started now!