Oreilly - Docker in Action Video Edition
by Jeff Nickoloff | Publisher: Manning Publications | Release Date: March 2016 | ISBN: 9781633430235VE
"In this book, Jeff goes from zero to Docker, showing practices of deploying Docker in production and demonstrating many features of Docker." Ahmet Alp Balkan, Microsoft Docker in Action teaches you how to create, deploy, and manage applications hosted in Docker containers. After starting with a clear explanation of the Docker model, you will learn how to package applications in containers, including techniques for testing and distributing applications. You will also learn how to run programs securely and how to manage shared resources. Using carefully designed examples, the book/course teaches you how to orchestrate containers and applications from installation to removal. Along the way, you'll discover techniques for using Docker on systems ranging from dev-and-test machines to full-scale cloud deployments. The idea behind Docker is simple. Create a tiny virtual environment, called a container, that holds just your application and its dependencies. The Docker engine uses the host operating system to build and account for these containers. They are easy to install, manage, and remove. Applications running inside containers share resources, making their footprints small. Inside: Packaging containers for deployment Installing, managing, and removing containers Working with Docker images Distributing with DockerHub To follow the book you need only have a working knowledge of the Linux OS. No prior knowledge of Docker is assumed. A software engineer, Jeff Nickoloff has presented Docker and its applications to hundreds of developers and administrators at Desert Code Camp, Amazon.com, and technology meetups. All there is to know about Docker. Clear, complete, and precise. Jean-Pol Landrain, Agile Partner Luxembourg A compelling narrative for real-world Docker solutions. A must-read! John Guthrie, Pivotal, Inc. An indispensable guide to understanding Docker and how it fits into your infrastructure. Jeremy Gailor, Gracenote Will help you transition quickly to effective Docker use in complex real-world situations. Peter Sellars, Fraedom NARRATED BY AIDEN HUMPHREYS
- Part 1. Keeping a Tidy Computer
- Chapter 1. Welcome to Docker 00:06:09
- Chapter 1. Containers are not virtualization 00:06:14
- Chapter 1. What problems does Docker solve? 00:10:09
- Chapter 1. Why is Docker important? 00:05:52
- Chapter 1. Example: “Hello, World” 00:06:19
- Chapter 2. Running software in containers 00:08:07
- Chapter 2. Running interactive containers 00:09:20
- Chapter 2. Solved problems and the PID namespace 00:07:42
- Chapter 2. Eliminating metaconflicts: building a website farm 00:08:41
- Chapter 2. Container state and dependencies 00:04:13
- Chapter 2. Building environment-agnostic systems 00:05:45
- Chapter 2. Environment variable injection 00:04:37
- Chapter 2. Building durable containers 00:04:24
- Chapter 2. Keeping containers running with supervisor and startup processes 00:05:45
- Chapter 2. Cleaning up 00:06:13
- Chapter 3. Software installation simplified 00:08:01
- Chapter 3. Finding and installing software 00:07:19
- Chapter 3. Docker Hub from the website 00:06:53
- Chapter 3. Images as files 00:05:42
- Chapter 3. Installation files and isolation 00:06:01
- Chapter 3. Layer relationships 00:04:50
- Chapter 3. Benefits of this toolset and file system structure 00:05:13
- Chapter 4. Persistent storage and shared state with volumes 00:07:11
- Chapter 4. Using volumes with a NoSQL database 00:04:30
- Chapter 4. Volume types 00:07:56
- Chapter 4. Docker-managed volumes 00:03:56
- Chapter 4. Sharing volumes 00:07:37
- Chapter 4. The managed volume life cycle 00:05:08
- Chapter 4. Advanced container patterns with volumes 00:04:42
- Chapter 4. Data-packed volume containers 00:06:07
- Chapter 5. Network exposure 00:08:58
- Chapter 5. Docker container networking 00:04:56
- Chapter 5. Closed containers 00:04:41
- Chapter 5. Bridged containers 00:10:48
- Chapter 5. Opening inbound communication 00:07:43
- Chapter 5. Modifying the bridge interface 00:05:15
- Chapter 5. Joined containers 00:07:11
- Chapter 5. Inter-container dependencies 00:08:34
- Chapter 5. Environment modifications 00:08:27
- Chapter 6. Limiting risk with isolation 00:06:38
- Chapter 6. CPU 00:07:34
- Chapter 6. Shared memory 00:05:13
- Chapter 6. Understanding users 00:09:28
- Chapter 6. Users and volumes 00:02:46
- Chapter 6. Adjusting OS feature access with capabilities 00:04:15
- Chapter 6. Stronger containers with enhanced tools 00:08:34
- Chapter 6. Build use-case-appropriate containers 00:07:44
- Part 2. Packaging Software for Distribution
- Chapter 7. Packaging software in images 00:05:24
- Chapter 7. Reviewing file system changes 00:05:50
- Chapter 7. Going deep on Docker images and layers 00:05:41
- Chapter 7. Reintroducing images, layers, repositories, and tags 00:09:44
- Chapter 7. Exporting and importing flat file systems 00:05:15
- Chapter 7. Versioning best practices 00:07:17
- Chapter 8. Build automation and advanced image considerations 00:09:41
- Chapter 8. A Dockerfile primer 00:09:51
- Chapter 8. File system instructions 00:08:36
- Chapter 8. Injecting downstream build-time behavior 00:04:24
- Chapter 8. Using startup scripts and multiprocess containers 00:08:53
- Chapter 8. Building hardened application images 00:09:46
- Chapter 8. SUID and SGID permissions 00:04:55
- Chapter 9. Public and private software distribution 00:10:00
- Chapter 9. Publishing with hosted registries 00:04:53
- Chapter 9. Publishing public projects with automated builds 00:07:29
- Chapter 9. Introducing private registries 00:05:11
- Chapter 9. Manual image publishing and distribution 00:09:24
- Chapter 9. Image source distribution workflows 00:04:38
- Chapter 10. Running customized registries 00:05:05
- Chapter 10. Introducing the V2 API 00:09:23
- Chapter 10. Enhancements for centralized registries 00:07:04
- Chapter 10. Configuring HTTPS (TLS) on the reverse proxy 00:07:01
- Chapter 10. Adding an authentication layer 00:07:42
- Chapter 10. Client compatibility 00:06:52
- Chapter 10. Durable blob storage 00:09:22
- Chapter 10. Scaling access and latency improvements 00:08:12
- Chapter 10. Integrating through notifications 00:13:02
- Part 3. Multi-Container and Multi-Host Environments
- Chapter 11. Declarative environments with Docker Compose 00:08:15
- Chapter 11. A complicated architecture: distribution and Elasticsearch integration 00:04:11
- Chapter 11. Iterating within an environment 00:09:15
- Chapter 11. Scale and remove services 00:08:13
- Chapter 11. Starting a new project: Compose YAML in three samples 00:05:39
- Chapter 11. Volume containers and extended services 00:03:58
- Chapter 12. Clusters with Machine and Swarm 00:04:15
- Chapter 12. Building and managing Docker Machines 00:06:01
- Chapter 12. Configuring Docker clients to work with remote daemons 00:05:20
- Chapter 12. Introducing Docker Swarm 00:06:31
- Chapter 12. Swarm extends the Docker Remote API 00:05:26
- Chapter 12. Swarm scheduling 00:04:34
- Chapter 12. Fine-tune scheduling with filters 00:07:18
- Chapter 12. Scheduling with BinPack and Random 00:04:14
- Chapter 12. Swarm service discovery 00:08:13
- Chapter 12. Looking forward to multi-host networking 00:04:10