Docker: Once Upon a Time cover

Docker: Once Upon a Time

Create, share, and run modern applications

by Manuel Morejón

$29.99

Master container technology from the ground up and solve one of software development’s most persistent headaches: the “it works on my machine” problem. Whether you are a developer or a DevOps engineer, this practical guide gives you the skills to build, share, and run modern applications reliably across any environment.

Docker: Once Upon a Time is written by a Senior DevOps and Cloud Native Engineer with over a decade of experience guiding large enterprises through the complex adoption of containers and Kubernetes clusters. This book takes you on a structured journey from zero to production-ready.

You will start with core container concepts and Docker installation on Mac, Windows, and Linux, then progress through image management, container networking, data persistence with volumes, and Dockerfile authoring. Each chapter includes hands-on exercises with answer keys, so you can immediately validate what you have learned.

Build and publish your own images to Docker Hub, then deploy containerized workloads to the cloud using DigitalOcean App Platform. You will also gain practical experience with Docker Compose V2 to coordinate multi-service applications—including real-world use cases such as a WordPress and MariaDB stack.

Written in accessible, direct language and structured from simple to advanced, Docker: Once Upon a Time requires only basic Linux system administration knowledge. No prior Docker experience is needed—just a terminal and a willingness to learn.

What You Will Learn

  • Install and configure Docker Desktop on Mac, Windows, and Linux and Docker Engine on Linux
  • Build optimized container images using Dockerfiles, multi-stage builds, and build cache strategies, shrinking your image sizes by up to 90%
  • Understand what namespaces, cgroups, and the Union File System actually are
  • Manage container networking, port publishing, and inter-container communication (bridge, host, overlay).
  • Persist data reliably using Docker volumes and environment-specific configuration
  • Publish images to Docker Hub with proper tagging
  • Deploy containerized applications to cloud platforms such as DigitalOcean using Docker Compose V2
  • Orchestrate complex development environments with a single command
  • Implement security best practices for avoiding running containers as root

Who This Book Is For

Developers and DevOps engineers who want to get started with Docker and container technology. Basic Linux command-line familiarity is recommended; no prior Docker knowledge is required.

Unique Selling Points

Structured for the beginner with progressive complexity, practical exercises in every chapter, and full answer keys—making it ideal for self-paced learning

Covers the complete Docker workflow end-to-end: from local installation and image creation through cloud deployment

Includes a dedicated Docker Compose V2 chapter with real-world multi-service use cases, including a full Cinema application scenario and a WordPress–MariaDB production-style stack

Written by Manuel Morejón, an experienced Docker practitioner and educator, under an open model

About the Author

Manuel is a Senior DevOps and Cloud Native Engineer with over a decade of experience guiding large enterprises through the complex adoption of containers and Kubernetes clusters. Recognized by the community as a former Docker Captain, he has spent years designing, automating, and scaling production-grade environments.

A passionate advocate for the “Docs-as-Code” philosophy, Manuel is the creator and author of the Once Upon a Time series (Docker: Once Upon a Time and Kubernetes: Once Upon a Time). Through this project, he bridges the gap between advanced cloud-native concepts and practical, production-oriented learning.

Above all, Manuel believes that technical knowledge should not be a luxury. He is dedicated to building a strong, collaborative community where knowledge is openly shared. To sustain this vision, he pioneers innovative community-support models through corporate GitHub Sponsorships, allowing those with the means to support the ecosystem so that high-quality technical resources remain accessible to developers worldwide.