Docker Management Design Patterns

Deepak Vohra

Published by
ISBN 9781484229729
RRP £28.99
Reviewed by Manoj Bhardwaj

4 out of 10

Docker is a leading containerization platform. Docker started with no native support for container clustering, automation and orchestration. The arrival of Docker 1.12, with its tight integration with Swarmkit, in 2016, changed that. This book discusses Docker 1.12 Swarm Mode. It is written with a Docker Administrator on AWS in mind. It talks about “How to...” aspect of Docker orchestration such as how to scale docker services on AWS or how to schedule tasks on a Worker Node in AWS.

The book is nicely structured, starting with easier topics and gradually advancing on to more difficult ones. Each chapter addresses one topic. The chapter starts with a brief problem statement, followed by the solution, where new concepts and terms are defined.

Dockers design team’s response to scalability and high availability was by use of clustering. A well-known and mature technique, it comes with its own issues such as load balancing, managing automatic failovers, managing multiple nodes, and sharing state/data between multiple nodes. Some of these issues are addressed, but they are very prescriptive. The author does not discuss in any detail the rationale behind the architecture and design of Docker Swarm or Swarmkit. The book just lists Docker Swarm “features” and shows how you should configure them as a Docker administrator. This is no different to Docker online documentation.

Tight affinity of Docker on AWS limits the scope of the book. A platform neutral stance may have served the author and the reader better. Containers are a new technology and a lot is happening in this area. A small introduction and comparison of competing products and technologies such as Kubernetes, Mesos and rkt would have added a lot of weight to the book.

Having said that, the book might appeal to some audiences, especially those who are new to Docker Swarm and need a quick and detailed “helping hand” to setup up a scalable, high availability infrastructure in AWS platform. Over 90% of the book is a series of screen-shots of AWS and Docker command line responses; therefore, someone with the right versions of AWS and Docker might find them accurate and useful. The book lists Docker commands with supported options. Anyone looking for a hardcopy of Docker command reference may also find this book useful.

The author is a very prolific writer, having published numerous books and articles in popular technical journals. With great respect to the author, I must say that this is a very average book, with a misleading choice of name. In my opinion, these are not Design Patterns and the high price is not justified.

Further information: Apress

May 2018