The book I chose to read for the reading week is called ‘Docker Deep Dive’ by Nigel Poulton. This book covers the basics of Docker, it’s history, how it works and how to use it in a simple and understandable way.
The first chapter covers why Docker exists in the first place. Before learning how Docker works, it is important to understand why it is needed. We begin the chapter by talking about how applications were deployed in the past. First each application needed its own server to run on. This caused significant overhead due to each server not being used to its fullest. This is compounded by the fact that companies didn’t want to buy too weak of a computer which led to overcompensation.
Next Poulton talks about virtual machines (VMs) and VMWare. This technology revolutionized application deployement. Now companies could run several applications on a single server, significantly reducing the amount of servers needed. However, the problem with VMs is that they still cause some overhead. Each VM needs an operating system kernel to run and so not being as effective as it could. Another problem with VMs is that they aren’t portable; an application running on the Linux kernel may not work on a Windows kernel for example.
Containerization aims to fix both of these issues. Containers use the host operating system’s kernel to run and they’re highly portable. The drawback on containerization is that it is complicated to deploy one. And so the reason Docker exists is to simplify containerization or, in the words of Poulton, “Docker was the magic that made Linux containers usable for mere mortals”.
This chapter gave me a fairly interesting view into why Docker exists. I’ve been using Docker to deploy some applications before and I understand when to choose Docker over deployment on a virtual machine or on bare metal. However having a holistic view of the history for Docker’s creation helps me to appreciate its existence. With Docker I don’t need to learn how to implement a Linux container!
I can definitely recommend this book to anyone interested in Docker who may not know where to start. The language used in it is not overly technical and the chapters are very well structured, at least judging by the first few chapters. Docker is a technology I think most people working in IT will come across so having a good grasp of it will certainly prove useful.
As for my language learning process, I’ve kept a steady pace of reading books about the computer science topics that interest me. I need to look up what some words mean fairly often, so trying to keep them in mind has proven difficult but worthwhile.
Good to hear about a informative beginner friendly introduction book to Docker. Do you think this is a good starter for a complete beginner or should I read up different texts first?
VastaaPoistaNice review. Docker really is very useful tool. After learning Docker I have never deployed apps without it.
VastaaPoistaThe book sounds helpful, this is my first time of reading about Docker and I would love to make more research on it. Its nice that reading the book helps you improve your English language skill
VastaaPoistaThis book seems like a great way to learn Docker! I like that it’s beginner friendly.
VastaaPoistaA good and clear review! I especially liked how you explained the background of Docker and why it is useful. You could perhaps expand a bit more on your own experience with using Docker—how did the book help you in practice? Also, the clarity of the book’s structure that you mentioned could be interesting to elaborate on with examples. Overall, a well-structured and informative text!
VastaaPoista