This document provides an introductory guide to Dockerfile best practices. It begins with some background on Docker and containers, including early developments in container shipping in the 1950s which led to substantial cost reductions. It then outlines key reasons for learning Docker best practices, such as reducing build time and image size, as well as ensuring maintainability and reproducibility. The document goes on to provide sections discussing reducing build time, reducing image size, maintainability, and reproducibility. It concludes by thanking the reader for their attention and providing a link to a Dockerfile example.