Book Image

Developing with Docker

By : Jaroslaw Krochmalski, Jarosław Krochmalski
Book Image

Developing with Docker

By: Jaroslaw Krochmalski, Jarosław Krochmalski

Overview of this book

This fast-paced practical guide will get you up and running with Docker. Using Docker, you will be able to build, ship, and run many distributed applications in real time. You will start with quickly installing Docker and start working with images and containers. We will present different types of containers and their applications, and show you how to find and build images. You will learn how you can contribute to the image repository by publishing different images. This will familiarize you with the image building process and you will be able to successfully run your programs within containers. By finishing this book, you will be well equipped in deploying your applications using Docker and will have a clear understanding of concepts, techniques, and practical methods to get it running in production systems.
Table of Contents (16 chapters)
Developing with Docker
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface

Images


You can think of an image as a read-only template, which is the base foundation to run a container on. It's like a template that contains everything your application needs to operate. It can be Ubuntu Linux with a web server and your web application installed. Every image starts from a base image, for example, Ubuntu, a base Linux image. You can create images yourself - images are created using a series of commands (called instructions), described in the Dockerfile. It is an ordered collection of layers - root filesystem changes stacked on top of one another. These changes can be running a command, adding a file or directory, creating environmental variables, and so on. Docker uses a filesystem called AUFS, which stands for Augmented File System. Pretty much every line of a Docker file (with some exceptions, which we are going to explain later) will create a new image and when you stack or augment them all on top of each other, you'll get your final Docker image. This is essentially...