The Docker Book
Book information
Description
Credits and Acknowledgments......Page 11 Scott Collier......Page 12 Technical Illustrator......Page 13 Conventions in the book......Page 14 Version......Page 15 Introduction......Page 16 Introducing Docker......Page 17 A logical segregation of duties......Page 18 Docker components......Page 19 Docker client and server......Page 20 Registries......Page 22 Containers......Page 23 What can you use Docker for?......Page 24 Docker with configuration management......Page 25 Docker's technical components......Page 26 What's in the book?......Page 27 Docker resources......Page 28 Installing Docker......Page 29 Installing on Ubuntu and Debian......Page 31 Checking for prerequisites......Page 32 Installing Docker......Page 34 Docker and UFW......Page 36 Installing on Red Hat and family......Page 37 Installing Docker......Page 38 Starting the Docker daemon on the Red Hat family......Page 41 Docker for Mac......Page 42 Installing Docker for Mac......Page 43 Docker for Windows installation......Page 44 Installing Docker for Windows......Page 45 Using Docker on OSX and Windows with this book......Page 46 Docker installation script......Page 47 Binary installation......Page 48 The Docker daemon......Page 49 Configuring the Docker daemon......Page 50 Checking that the Docker daemon is running......Page 52 Docker user interfaces......Page 54 Summary......Page 55 Ensuring Docker is ready......Page 56 Running our first container......Page 58 Working with our first container......Page 61 Container naming......Page 64 Starting a stopped container......Page 65 Attaching to a container......Page 66 Creating daemonized containers......Page 67 Seeing what's happening inside our container......Page 68 Docker log drivers......Page 70 Inspecting the container's processes......Page 71 Docker statistics......Page 72 Running a process inside an already running container......Page 73 Stopping a daemonized container......Page 74 Automatic container restarts......Page 75 Finding out more about our container......Page 76 Deleting a container......Page 79 Summary......Page 80 Working with Docker images and repositories......Page 81 What is a Docker image?......Page 82 Listing Docker images......Page 84 Pulling images......Page 88 Searching for images......Page 90 Creating a Docker Hub account......Page 92 Using Docker commit to create images......Page 94 Building images with a Dockerfile......Page 97 Building the image from our Dockerfile......Page 101 What happens if an instruction fails?......Page 104 Dockerfiles and the build cache......Page 106 Using the build cache for templating......Page 107 Viewing our new image......Page 108 Launching a container from our new image......Page 109 Dockerfile instructions......Page 114 Pushing images to the Docker Hub......Page 137 Automated Builds......Page 140 Deleting an image......Page 143 Running your own Docker registry......Page 145 Testing the new registry......Page 146 Summary......Page 148 Testing with Docker......Page 150 An initial Dockerfile for the Sample website......Page 151 Building our Sample website and Nginx image......Page 155 Building containers from our Sample website and Nginx image......Page 157 Editing our website......Page 160 Building our Sinatra application......Page 162 Creating our Sinatra container......Page 164 Extending our Sinatra application to use Redis......Page 169 Connecting our Sinatra application to the Redis container......Page 174 Docker internal networking......Page 175 Docker networking......Page 181 Connecting containers summary......Page 192 Using Docker for continuous integration......Page 193 Build a Jenkins and Docker server......Page 194 Create a new Jenkins job......Page 200 Running our Jenkins job......Page 206 Next steps with our Jenkins job......Page 208 Create a multi-configuration job......Page 209 Testing our multi-configuration job......Page 214 Summary of our multi-configuration Jenkins......Page 216 Summary......Page 217 Building our first application......Page 218 The Jekyll base image......Page 219 Building the Jekyll base image......Page 220 The Apache image......Page 222 Building the Jekyll Apache image......Page 224 Launching our Jekyll site......Page 225 Updating our Jekyll site......Page 228 Backing up our Jekyll volume......Page 230 Building a Java application server with Docker......Page 232 A WAR file fetcher......Page 233 Fetching a WAR file......Page 235 Our Tomcat 7 application server......Page 236 Running our WAR file......Page 238 Building on top of our Tomcat application server......Page 239 A multi-container application stack......Page 243 The Node.js image......Page 244 The Redis base image......Page 247 The Redis primary image......Page 249 The Redis replica image......Page 250 Creating our Redis back-end cluster......Page 251 Creating our Node container......Page 258 Capturing our application logs......Page 259 Summary of our Node stack......Page 263 Managing Docker containers without SSH......Page 264 Summary......Page 265 Docker Orchestration and Service Discovery......Page 266 Docker Compose......Page 267 Installing Docker Compose......Page 268 Getting our sample application......Page 269 The docker-compose.yml file......Page 273 Running Compose......Page 276 Using Compose......Page 278 Consul, Service Discovery and Docker......Page 282 Building a Consul image......Page 284 Testing a Consul container locally......Page 288 Running a Consul cluster in Docker......Page 290 Starting the Consul bootstrap node......Page 293 Starting the remaining nodes......Page 296 Running a distributed service with Consul in Docker......Page 304 Docker Swarm......Page 317 Understanding the Swarm......Page 318 Setting up a Swarm......Page 319 Running a service on your Swarm......Page 324 Orchestration alternatives and components......Page 329 Helios......Page 330 Summary......Page 331 The Docker APIs......Page 332 First steps with the Engine API......Page 333 Testing the Docker Engine API......Page 337 Managing images with the API......Page 338 Managing containers with the API......Page 340 Improving the TProv application......Page 345 Authenticating the Docker Engine API......Page 350 Create a Certificate Authority......Page 351 Create a server certificate signing request and key......Page 353 Configuring the Docker daemon......Page 357 Creating a client certificate and key......Page 358 Configuring our Docker client for authentication......Page 361 Summary......Page 363 Getting help and extending Docker......Page 364 Docker on GitHub......Page 365 Setting up a build environment......Page 366 Check out the source......Page 367 Build the environment......Page 368 Running the tests......Page 371 Submitting a pull request......Page 373 Merge approval and maintainers......Page 375 List of Figures......Page 376 Index......Page 379
Similar books
The Docker Book: Containerization is the new virtualization
2014 · EPUB
The Docker Book [March 12, 2019 v18.09.2]
2019 · PDF
Monitoring with Prometheus
2018 · PDF
The Logstash Book: Logs management made easy
2016 · AZW3
Pro Puppet
2011 · PDF
The Packer Book
2017 · PDF
The Art of Monitoring
2016 · EPUB
The Docker Book
2014 · EPUB