What this book covers
Chapter 1, Modern Infrastructure and Applications with Docker, explains the evolution of software architecture and how microservices fit with container-based applications, due to their special features and characteristics.
Chapter 2, Building Docker Images, teaches you what container images are, explaining the layers model and the use of a Dockerfile to build these images using the best security practices.
Chapter 3, Shipping Docker Images, shows you how to store and share container images for your projects.
Chapter 4, Running Docker Containers, covers how to run containers using different software container clients, explaining how to manage container isolation, security, and resource usage.
Chapter 5, Creating Multi-Container Applications, teaches you how to run applications based on multiple components with containers, using Docker Compose to build, run, and deploy your applications in different environments.
Chapter 6, Fundamentals of Orchestration, introduces the container orchestration concept to define and manage application component logic within distributed container runtimes, running as part of a cluster.
Chapter 7, Orchestrating with Swarm, examines Docker Swarm orchestrators with examples of their features and usage.
Chapter 8, Deploying Applications with the Kubernetes Orchestrator, introduces the Kubernetes orchestrator, showing you its components and features, and explaining how to prepare your applications to run on your own Kubernetes platform on your desktop computer.
Chapter 9, Implementing Architecture Patterns, shows you how different application architecture models can be delivered and secured with Kubernetes, thanks to its unique features.
Chapter 10, Leveraging Application Data Management in Kubernetes, dives deep into different Kubernetes resources used to manage sensitive, temporal, and persistent distributed data.
Chapter 11, Publishing Applications, describes different architecture strategies to securely publish your application frontends on Kubernetes.
Chapter 12, Gaining Application Insights, covers managing applications observability within Kubernetes, using open source tools to monitor metrics and provide logging and traceability.
Chapter 13, Managing the Application Life Cycle, introduces the application software life cycle concept and stages, covering how we can manage them by working with containers. This chapter also delves into automating and improving the life cycle by using continuous integration and continuous deployment models.