Book Image

Deployment with Docker

By : Srdjan Grubor
Book Image

Deployment with Docker

By: Srdjan Grubor

Overview of this book

Deploying Docker into production is considered to be one of the major pain points in developing large-scale infrastructures, and the documentation available online leaves a lot to be desired. With this book, you will learn everything you wanted to know to effectively scale your deployments globally and build a resilient, scalable, and containerized cloud platform for your own use. The book starts by introducing you to the containerization ecosystem with some concrete and easy-to-digest examples; after that, you will delve into examples of launching multiple instances of the same container. From there, you will cover orchestration, multi-node setups, volumes, and almost every relevant component of this new approach to deploying services. Using intertwined approaches, the book will cover battle-tested tooling, or issues likely to be encountered in real-world scenarios, in detail. You will also learn about the other supporting components required for a true PaaS deployment and discover common options to tie the whole infrastructure together. At the end of the book, you learn to build a small, but functional, PaaS (to appreciate the power of the containerized service approach) and continue to explore real-world approaches to implementing even larger global-scale services.
Table of Contents (18 chapters)
Title Page
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Index

Writing a real service


So far, we have spent time making fake or mock container services that helped us build Docker skills, but we have not had a chance to work on something that resembles a real-world service. In general, most of the simpler services that get utilized out there will look something similar to what is shown in this high-level diagram:

An overview

Here we will discuss each service in detail.

Web servers:

The rightmost piece in the image we just looked at is a web server. Web servers act as high-speed HTTP request processing handlers and are generally used in this context as follows:

  • Reverse-proxy endpoints for resources within the clusters, Virtual Private Cloud (VPC), and/or Virtual Private Network (VPN)
  • Hardened gatekeepers to limit resource access and/or prevent abuse
  • Analytics collection points
  • Load balancers
  • Static content delivery servers
  • Reducers of application server logic utilization
  • SSL termination endpoints
  • Caches of remote data
  • Data diodes (allow either ingress or egress of...