Skip to content

Docker

What Are We Trying to Accomplish?

Modern software engineering relies heavily on consistent, reproducible environments. This lesson introduces Docker as a foundational tool for building, shipping, and running applications using containerization.

Students will learn why Docker exists, what problems it solves, and how to practically leverage containers in real-world development workflows. By the end of this lesson, students will not only understand Docker conceptually but will also have hands-on experience building images, running containers, and connecting local development environments to containerized systems.

Lectures & Assignments

Lectures

Assignments


Terminal Learning Objectives

  • Navigate and inspect running containers
  • Write and run basic Dockerfiles
  • Connect local development files to containers
  • Apply Docker best practices in small projects

Enabling Learning Objectives

  • Explain containerization and its benefits
  • Compare containers and virtual machines
  • Describe the Docker image lifecycle