Cover
Title Page
Copyright and Credits
Dedication
About Packt
Contributors
Table of Contents
Preface
Section 1
Key Container Concepts
Chapter 1: Modern Infrastructures and Applications with Docker
Technical requirements
Understanding the evolution of applications
Infrastructures
Processes
Microservices and processes
What are containers?
Learning about the main concepts of containers
Container runtime
Images
Containers
Process isolation
Orchestration
Registry
Docker components
Docker daemon
Docker client
Docker objects
Building, shipping, and running workflows
Building
Shipping
Running
Windows containers
Customizing Docker
Customizing the Docker daemon
Docker client customization
Docker security
Docker client-server security
Docker daemon security
Namespaces
User namespace
Kernel capabilities (seccomp)
Linux security modules
Docker Content Trust
Chapter labs
Installing the Docker runtime and executing a ""hello world"" container
Docker runtime processes and namespace isolation
Docker capabilities
Summary
Questions
Further reading
Chapter 2: Building Docker Images
Technical requirements
Building Docker images
Creating images with Dockerfiles
Creating images interactively
Creating images from scratch
Understanding copy-on-write filesystems
Building images with a Dockerfile reference
Dockerfile quick reference
Building process actions
Image tagging and meta-information
Docker registries and repositories
Securing images
Managing images and other related objects
Listing images
Sharing images using registries
Multistage building and image caches
Templating images
Image releases and updates
Chapter labs
Docker build caching
Where to use volumes in Dockerfiles
Multistage building
Deploying a local registry
Image templating using Dockerfiles
Summary
Questions
Further reading
Chapter 3: Running Docker Containers
Technical requirements
Reviewing the Docker command line in depth
Learning about Docker objects
Running containers
Main container actions
Container network properties
Container behavior definition
Executing containers
Container security options
Using host namespaces
Interacting with containers
Limiting host resources
Converting containers into images
Formatting and filtering information
Managing devices
Chapter labs
Reviewing Docker command-line object options
Executing containers
Limiting container resources
Formatting and filtering container list output
Summary
Questions
Further reading
Chapter 4: Container Persistency and Networking
Technical requirements
Understanding stateless and stateful containers
Learning how volumes work
Learning about volume object actions
Using volumes in containers