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

Docker in Practice, Second Edition

Book Description

Docker in Practice, Second Edition teaches you rock-solid, tested Docker techniques, such as replacing VMs, enabling microservices architecture, efficient network modeling, offline productivity, and establishing a container-driven continuous delivery process. Following a cookbook-style problem/solution format, you’ll explore real-world use cases and learn how to apply the lessons to your own dev projects.

Table of Contents

  1. Copyright
  2. Brief Table of Contents
  3. Table of Contents
  4. Praise for the First Edition
  5. Preface
  6. Acknowledgments
  7. About this book
  8. About the cover illustration
  9. Part 1. Docker fundamentals
    1. Chapter 1. Discovering Docker
      1. 1.1. The what and why of Docker
      2. 1.2. Building a Docker application
      3. Summary
    2. Chapter 2. Understanding Docker: Inside the engine room
      1. 2.1. Docker’s architecture
      2. 2.2. The Docker daemon
      3. 2.3. The Docker client
      4. 2.4. Docker registries
      5. 2.5. The Docker Hub
      6. Summary
  10. Part 2. Docker and development
    1. Chapter 3. Using Docker as a lightweight virtual machine
      1. 3.1. From VM to container
      2. 3.2. Saving and restoring your work
      3. 3.3. Environments as processes
      4. Summary
    2. Chapter 4. Building images
      1. 4.1. Building images
      2. Summary
    3. Chapter 5. Running containers
      1. 5.1. Running containers
      2. 5.2. Volumes—a persistent problem
      3. Summary
    4. Chapter 6. Day-to-day Docker
      1. 6.1. Staying ship-shape
      2. Summary
    5. Chapter 7. Configuration management: Getting your house in order
      1. 7.1. Configuration management and Dockerfiles
      2. 7.2. Traditional configuration management tools with Docker
      3. 7.3. Small is beautiful
      4. Summary
  11. Part 3. Docker and DevOps
    1. Chapter 8. Continuous integration: Speeding up your development pipeline
      1. 8.1. Docker Hub automated builds
      2. 8.2. More efficient builds
      3. 8.3. Containerizing your CI process
      4. Summary
    2. Chapter 9. Continuous delivery: A perfect fit for Docker principles
      1. 9.1. Interacting with other teams in the CD pipeline
      2. 9.2. Facilitating deployment of Docker images
      3. 9.3. Configuring your images for environments
      4. 9.4. Upgrading running containers
      5. Summary
    3. Chapter 10. Network simulation: Realistic environment testing without the pain
      1. 10.1. Container communication: Beyond manual linking
      2. 10.2. Using Docker to simulate real-world networking
      3. 10.3. Docker and virtual networks
      4. Summary
  12. Part 4. Orchestration from a single machine to the cloud
    1. Chapter 11. A primer on container orchestration
      1. 11.1. Simple single-host Docker
      2. 11.2. Manual multi-host Docker
      3. 11.3. Service discovery: What have we here?
      4. Summary
    2. Chapter 12. The data center as an OS with Docker
      1. 12.1. Multi-host Docker
      2. Summary
    3. Chapter 13. Docker platforms
      1. 13.1. Organizational choice factors
      2. 13.2. Areas to consider when adopting Docker
      3. 13.3. Vendors, organizations, and products
      4. Summary
  13. Part 5. Docker in production
    1. Chapter 14. Docker and security
      1. 14.1. Docker access and what it means
      2. 14.2. Security measures in Docker
      3. 14.3. Securing access to Docker
      4. 14.4. Security from outside Docker
      5. Summary
    2. Chapter 15. Plain sailing: Running Docker in production
      1. 15.1. Monitoring
      2. 15.2. Resource control
      3. 15.3. Sysadmin use cases for Docker
      4. Summary
    3. Chapter 16. Docker in production: Dealing with challenges
      1. 16.1. Performance: You can’t ignore the tin
      2. 16.2. When containers leak—debugging Docker
      3. Summary
  14. Appendix A. Installing and using Docker
    1. The virtual machine approach
    2. Docker client connected to an external Docker server
    3. Native Docker client and virtual machine
    4. Getting help
  15. Appendix B. Docker configuration
    1. Configuring Docker
    2. Restarting Docker
  16. Appendix C. Vagrant
    1. Setting up
    2. GUIs
    3. Memory
  17. Index
  18. List of Figures
  19. List of Tables
  20. List of Listings