O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Microservices and Containers, First Edition

Book Description

The Complete Guide to Succeeding with Microservices and Docker in Large Software Projects


Together, microservices and Docker containers can bring unprecedented agility and scalability to application development and deployment—especially in large, complex projects where speed is crucial but small errors can be disastrous. In Microservices and Containers, Parminder Singh Kocher demonstrates why and how these technologies can help you build, deploy, manage, and scale industrial-strength applications.


You’ll learn how to leverage microservices and Docker to drive exponential improvements in DevOps effectiveness, on-demand scalability, application performance, time-to-market, code reuse, and application reliability. Kocher also offers detailed guidance and a complete roadmap for transitioning from monolithic architectures, and an in-depth case study walking through the migration of an enterprise-class SOA system.

  • Understand how microservices enable you to organize applications into standalone components that are easier to manage, update, and scale
  • Decide whether microservices and containers are worth your investment, and manage the organizational learning curve associated with them
  • Apply best practices for interprocess communication among microservices
  • Migrate monolithic systems in an orderly fashion
  • Understand Docker containers, installation, and interfaces
  • Network, orchestrate, and manage Docker containers effectively
  • Use Docker to maximize scalability in microservices-based applications

This guide will be valuable to software/systems professionals moving from older approaches, architects and developers already working with microservices and containers, and executives and managers seeking to maximize the business value of these technologies.

Table of Contents

  1. Cover Page
  2. Title Page
  3. Contents
  4. Preface
    1. Is This Book for You?
  5. Part I: Microservices
    1. 1. An Introduction to Microservices
      1. What Are Microservices?
      2. Modular Architecture
      3. Other Advantages of Microservices
      4. Disadvantages of Microservices
    2. 2. Switching to Microservices
      1. Fatigues and Attributes
      2. Learning Curve for the Organization
      3. Business Case for Microservices
      4. Cost Components
    3. 3. Interprocess Communication
      1. Types of Interactions
      2. Preparing to Write Web Services
      3. Microservice Maintenance
      4. Discovery Service
      5. Putting It All Together
    4. 4. Migrating and Implementing Microservices
      1. The Need for Transition
      2. Creating a New Application with Microservices
      3. Migrating a Monolithic Application to Microservices
      4. A Hybrid Approach
  6. Part II: Containers
    1. 5. Docker Containers
      1. Virtual Machines
      2. Containers
      3. Docker Architecture and Components
      4. The Power of Docker: A Simple Example
    2. 6. Docker Installation
      1. Installing Docker on Mac OS X
      2. Installing Docker on Windows
      3. Installing Docker on Ubuntu Linux
    3. 7. Docker Interface
      1. Key Docker Commands
      2. Build-Related Docker Commands
      3. Dockerfile
      4. Docker Compose
    4. 8. Containers Networking
      1. Key Linux Concepts
      2. Linking
      3. Default Options
      4. Custom Networks
    5. 9. Container Orchestration
      1. Kubernetes
      2. Apache Mesos and Marathon
      3. Docker Swarm
    6. 10. Containers Management
      1. Monitoring
      2. Logging
      3. Metrics Collection
      4. Cluster-wide Monitoring Tools
  7. Part III: Hands-On Project—Putting Learning into Practice
    1. 11. Case Study: Monolithic Helpdesk Application
      1. Helpdesk Application Overview
      2. Application Architecture
      3. Building the Application
      4. New Requirements and Bug Fixes
    2. 12. Case Study: Migration to Microservices
      1. Planning for Migration
      2. Converting to Microservices
      3. Application Build and Deployment
      4. New Requirements and Bug Fixes
    3. 13. Case Study: Containerizing a Helpdesk Application
      1. Containerizing Microservices
      2. Deploying the Catalog Microservice
      3. Updating the Monolithic Application
    4. Conclusion
      1. What Is DevOps?
      2. Only the Beginning
  8. Appendix A. Helpdesk Application Flow
    1. Administrator Flows
    2. Customer Flows
    3. Support Desk Engineer Flows
  9. Appendix B. Installing the Solr Search Engine
    1. Prerequisites
    2. Installation Steps
    3. Configuring Solr for Simple Data Import