The document introduces containers and Docker. It discusses the problems with traditional virtualization approaches for managing and deploying code. Containers provide a lightweight virtualization method that packages code and dependencies together so the application runs reliably from one computing environment to another. Docker is a tool that makes it easy to create, deploy and run containers. The document provides examples of using Docker to build container images from a Dockerfile, run containers, link containers together using Docker Compose, and share container images publicly on Docker Hub.