This book is for everyone who has a stake in making sure that software can be written, delivered, and run in production as smootly and reliably as possible. If you are managing technical teams, architecting platforms, developing services, building DevOps pipelines, supporting production operations, or responding to alerts at 2AM, then this book is designed for you. Docker and Linux containers have changed almost every aspect of modern software delivery and this book will help you understand how all of these changes can be leveraged to speed up software deliver while also creating more robust and reliable systems to serve your end users.
A quick introduction to Docker, what it is, and how a Docker-based workflow can be user to improve multiple stages in the DevOps software delivery pipeline.
A much deeper dive into the Docker ecosystem and the many concepts that containers bring into modern platform design and application development.
Covers multiple approaches to installing Docker on Linux (multiple distributions), macOS, and Windows, including Docker Desktop, Community edition, Vagrant, and more.
Dive into the details of building container images with Docker. This section will help you understand how to create Dockerfiles, package your application into an image for one or more architectures, optimize the images for size and build speeds, and much more.
Provides an overview of the basics of working with both Linux and Windows containers. Also covers the storage and resource management options that are available for application management.
An overview of the techniques that can be used to gather information from you containers. This include logs, resource usage statistics, system events, health checks, and more.
A deep dive into how images and containers work in Linux and all of the information that you can gather to understand how your applications are assembled and working.
A practical exploration of Docker Compose and how it can be used to reliably spin-up complex, multi-containers environments for local development and testing.
A broad overview of many of the concepts that are important to running containers in production.
An exploration of a few options for running containers in production. This include Docker swarm-mode, Kubernetes, and AWS ECS Fargate.
A deep dive into Linux control group, namespaces, security, networking, and storage.
A short review of some of the alternative tools that user's might find useful supplements to their workflows.
An overview of both the 12-Factor App and the Reactive Manifesto and how these important articles relate to designing applications for Linux containers.
A recap of the benefits that Docker and Linux containers provide for modern application and platform development.
The book includes hands on examples.
You can find the longer code samples here: https://github.com/bluewhalebook/docker-up-and-running-3rd-edition.
The book is now in its 3rd edition, which includes one completely new chapter, 3 important new sections (buildkit, buildx, and rootless containers), and major updates to all of the original chapters.
Docker: Up & Running, 3rd edition is available at the online stores below and at your local bookstore.
The 3rd edition can also be pre-ordered via Amazon.