Deployment with Docker
$352DevOps 實踐 (Practical DevOps)
- Use horizontal node scaling, Continuous Integration / Continuous Delivery, and modern collaboration tools (Docker Swarm, Kubernetes, Mesos) to manage your infrastructure
- Build up capabilites to handle bigger workloads related to your infrastrcuture
- Discover alternative approaches to building your own small-scale platform-as-a-service (PaaS) deployment
Micro-services and containers are here to stay and in today's world Docker is emerging as the de facto standard for scalability. Deploying Docker into production is considered as one of the major pain points of developing large scale applications. With this book, you will get exposure to the various open source tools available for the development and deployment. You will learn everything you wanted to know to effectively scale your deployments globally.
The main mission of this book is to show you the advantages Docker brings over manual or semi-manual deployments and how to scale and deploy these services into levels capable of handling the most-extreme workloads. The book starts by introducing you to the containerization ecosystem with some tangible and easy-to-digest examples. It will then delve into examples of launching multiple instances of the same container. Using intertwined approaches, the book will cover battle-tested tooling or issues that might be encountered in the real world scenario. You will then learn other supporting pieces needed for a true PaaS deployment and discover common options out there to tie the whole infrastructure together. You will learn to build up a small-but-functional PaaS to see the power of the containerized approach At the end, you will implement a mock PaaS scalable service and continue to discover real-world approaches to implementing even larger global-scale services.
What you will learn
- Set up the working development environment and create a simple webservice to demonstrate the basics
- Learn how to make your service more usable with addition of a database and an app server to process logic
- Add resilience to your services by learning how to horizontally scale with a few containers on a single node
- Discover layering isolation and messaging to simplify and harden the connectivity between containers
- Learn about myriad of issues and their workarounds that will be encountered at these scales from the kernel up to versioning of the code.
- Peek into the real-world implementations of the biggest systems out there