- Download 2
- File Size 8.16 MB
- File Count 1
- Create Date October 11, 2020
- Last Updated October 23, 2020
Using Docker Developing and Deploying Software with Containers by Adrian Mouat
Docker containers offer simple, fast, and robust methods for developing distributing and running software. Especially in dynamic and distributed environments. With this hands-on guide, you’ll learn why containers are so important., what you’ll gain by adopting Docker, and how to make it part of your development process.
Ideal for developers, operations engineers, and system administrators – especially those keen to embrace a DevOps approach – Using Docker Will take you from basics to running dozens of containers on a multi-host system with networking and scheduling. The Core of the book walks you through the steps needed to develop, test, and deploy a web application with Docker.
- Get started with Docker by building and deploying a simple web application.
- Use continuous deployment technique to push Your application to production multiple time a day.
- Learn various options and techniques for logging and monitoring multiple containers
- Examine networking and service discovery: how do containers find each other and how do you connect them.
- Orchestrate and cluster containers to address load balancing killing failover and scheduling.
- secure your system by following the principles of defence in depth and least privilege.
- exploit containers to build microservice architecture's
Written down by itself, this sounds dry and boring. But the process improvements made possible by containers are anything but; used correctly, containers can be game-changing. So persuasive is the lure of the architectures and workflows made possible by containers that it feels like every major IT company has gone in a year from never having heard of Docker or containers to actively investigating and using them.
The rise of Docker has been astonishing. I don’t remember any technology that has had such a fast and profound effect on the IT industry. This book is my attempt to help you understand why containers are so important, what you stand to gain from adopting containerization, and most importantly, how to go about it.
Who Should Read This Book
This book tries to take a holistic approach to Docker, explaining the reasons for using Docker and showing how to use it and how to integrate it into a software development workflow. The book covers the entire software lifecycle, from development through to production and maintenance.
I have tried to avoid assuming too much of the reader beyond a basic knowledge of Linux and software development in general. The intended readership is primarily software developers, operations engineers, and system administrators (particularly those keen to develop a DevOps approach), but technically informed managers and enthusiasts should also be able to get something out of this book.
Navigating This Book
This book is organized roughly as follows:
- Part I starts by explaining what containers are and why you should be interested in them, before going into a tutorial chapter showing the basics of Docker. It ends with a large chapter explaining the fundamental concepts and technology in Docker, including an overview of the various Docker commands.
- Part II explains how to use Docker in a software development lifecycle. It starts by showing how to set up a development environment, before building a simple web application that is used as an ongoing example through the rest of Part II. The chapter covers development, testing, and integration, as well as how to deploy containers and how to effectively monitor and log a production system.
- Part III goes into advanced details and the tools and techniques needed to run multi-host clusters of Docker containers safely and reliably. If you are already using Docker and need to understand how to scale up or solve networking and security issues, this is for you.