Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Learning Docker
Learning Docker

Learning Docker: Optimize the power of Docker to run your applications quickly and easily

Arrow left icon
Profile Icon Pethuru Raj Profile Icon Jeeva S. Chelladhurai Profile Icon Vinod Singh Profile Icon Jeeva Chelladhurai Profile Icon Vinod kumar Singh Profile Icon Pethuru Raj Chelliah +2 more Show less
Arrow right icon
$19.99 per month
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8 (5 Ratings)
Paperback Jun 2015 240 pages 1st Edition
eBook
$29.99 $43.99
Paperback
$54.99
Subscription
Free Trial
Renews at $19.99p/m
Arrow left icon
Profile Icon Pethuru Raj Profile Icon Jeeva S. Chelladhurai Profile Icon Vinod Singh Profile Icon Jeeva Chelladhurai Profile Icon Vinod kumar Singh Profile Icon Pethuru Raj Chelliah +2 more Show less
Arrow right icon
$19.99 per month
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8 (5 Ratings)
Paperback Jun 2015 240 pages 1st Edition
eBook
$29.99 $43.99
Paperback
$54.99
Subscription
Free Trial
Renews at $19.99p/m
eBook
$29.99 $43.99
Paperback
$54.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Learning Docker

Chapter 2. Handling Docker Containers

In the previous chapter, we explained stimulating and sustainable concepts, which showed the Docker's way of crafting futuristic and flexible application-aware containers. We discussed all the relevant details of producing the Docker containers in multiple environments (on-premise as well as off-premise). Using these techniques, you can easily replicate these features in your own environments to get a rewarding experience. Therefore, the next step for us is to understand the container's life cycle aspects in a decisive manner. You will learn the optimal utilization of containers of our own as well as those of other third-party containers in an effective and risk-free way. Containers are to be found, assessed, accessed, and leveraged toward bigger and better applications. There are several tools that have emerged to streamline the handling of containers.

In this chapter, we will dig deeper and describe the critical aspects of container...

Clarifying the Docker terms

To make this chapter substantially simpler to understand and to minimize any kind of ambiguity, the frequently used terms will be explained in the following section.

Docker images and containers

A Docker image is a collection of all of the files that make up a software application. Each change that is made to the original image is stored in a separate layer. To be precise, any Docker image has to originate from a base image according to the various requirements. Additional modules can be attached to the base image for deriving the various images that can exhibit the preferred behavior. Each time you commit to a Docker image you are creating a new layer on the Docker image, but the original image and each pre-existing layer remains unchanged. In other words, images are typically of the read-only type. If they are empowered through the systematic attachment of newer modules, then a fresh image will be created with a new name. The Docker images are turning out to...

Working with Docker images

In the previous chapter, we demonstrated the typical Hello World! example by using a busybox image. Now there is a need for a close observation of the output of the docker pull subcommand, which is a standard command for downloading the Docker images. You would have noticed the presence of the busybox:latest text in the output text, and we will explain this mystery in a detailed manner by bringing in a small twist to the docker pull subcommand by adding the -a option, as shown here:

$ sudo docker pull -a busybox

Surprisingly, you will observe that the Docker engine downloads a few more images with the -a option. You can easily check the images that are available on the Docker host by running the docker images subcommand, which comes in handy, and it reveals more details with respect to :latest and the additional images that are downloaded by running this command. Let us run this command:

$ sudo docker images

You will get the list of images, as follows:

REPOSITORY...

Working with an interactive container

In the first chapter, we ran our first Hello World! container to get a feel of how the containerization technology works. In this section, we are going to run a container in an interactive mode. The docker run subcommand takes an image as an input and launches it as a container. You have to pass the -t and -i flags to the docker run subcommand in order to make the container interactive. The -i flag is the key driver, which makes the container interactive by grabbing the standard input (STDIN) of the container. The -t flag allocates a pseudo-TTY or a pseudo terminal (terminal emulator) and then assigns that to the container.

In the following example, we are going to launch an interactive container by using the ubuntu:14.04 image and /bin/bash as the command:

$ sudo docker run -i -t ubuntu:14.04 /bin/bash

Since the ubuntu image has not been downloaded yet, if we use the docker pull subcommand, then we will get the following message and the run command will...

Summary

In this chapter, we described the knowledge that is gained in the post-implementation phases, primarily regarding the operational aspect of the Docker containers. We started the chapter by clarifying important terms, such as images, containers, registry, and repository, in order to enable you to acquire an unambiguous understanding of the concepts illustrated thereafter. We explained how to search for the images in the Docker repository. We also discussed the operation and handling of the Docker containers, how to track the changes inside the containers, how to control and housekeep the containers. In an easy-to-grasp manner, we will explain the process of the Docker image building in the next chapter.

Left arrow icon Right arrow icon

Description

Docker is a next-generation platform for simplifying application containerization life-cycle. Docker allows you to create a robust and resilient environment in which you can generate portable, composable, scalable, and stable application containers. This book is a step-by-step guide that will walk you through the various features of Docker from Docker software installation to the impenetrable security of containers. The book starts off by elucidating the installation procedure for Docker and a few troubleshooting techniques. You will be introduced to the process of downloading Docker images and running them as containers. You'll learn how to run containers as a service (CaaS) and also discover how to share data among containers. Later on, you'll explore how to establish the link between containers and orchestrate containers using Docker Compose. You will also come across relevant details about application testing inside a container. You will discover how to debug a container using the docker exec command and the nsenter tool. Finally, you will learn how to secure your containers with SELinux and other proven methods.

Who is this book for?

If you are an application developer who wants to learn Docker in order to utilize its features for application deployment, then this book is for you. No prior knowledge of Docker is required.

What you will learn

  • Build a Docker image using Dockerfiles
  • Push and publish images on Docker Hub
  • Run your own private Docker Hub and upload images onto it
  • Create and run services inside a container to deploy your applications with ease
  • Share data between the Docker host and containers
  • Orchestrate multiple containers with Docker Compose
  • Test and debug applications inside a Docker container
  • Secure your Docker containers with SELinux

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jun 29, 2015
Length: 240 pages
Edition : 1st
Language : English
ISBN-13 : 9781784397937
Vendor :
Docker
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Jun 29, 2015
Length: 240 pages
Edition : 1st
Language : English
ISBN-13 : 9781784397937
Vendor :
Docker
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 103.98
Practical DevOps
$48.99
Learning Docker
$54.99
Total $ 103.98 Stars icon

Table of Contents

12 Chapters
1. Getting Started with Docker Chevron down icon Chevron up icon
2. Handling Docker Containers Chevron down icon Chevron up icon
3. Building Images Chevron down icon Chevron up icon
4. Publishing Images Chevron down icon Chevron up icon
5. Running Your Private Docker Infrastructure Chevron down icon Chevron up icon
6. Running Services in a Container Chevron down icon Chevron up icon
7. Sharing Data with Containers Chevron down icon Chevron up icon
8. Orchestrating Containers Chevron down icon Chevron up icon
9. Testing with Docker Chevron down icon Chevron up icon
10. Debugging Containers Chevron down icon Chevron up icon
11. Securing Docker Containers Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8
(5 Ratings)
5 star 40%
4 star 20%
3 star 20%
2 star 20%
1 star 0%
Carles Aug 13, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Either if you are a Developer or a System Administrator, Docker is about to be a must know and must have in your daily toolbox.When a new technology arises and you want to get savvy on it, you can choose between two roads: diving into hundreds of not so well documented and often outdated on-line tutorials or going for the right way and choose a good book like this that guides and helps you in the process. This book it's written with this kind of scenario in mind, going straight to the point that matters, in order to help and speed up your learning curve.On chapter 1 you'll learn what it's docker and how can you benefit from using it on your daily work. If you are a developer who wants to start using this technology the book guides you through a series of chapters that discuses all you need to know to get confident with it (chapters 1 to 4). In the other hand if you are a system administrator, once you know the basis from the 4th first chapters, you only need to keep walking your way across the chapter 5 to get all you need to know to deploy and maintain you own private Docker infrastructure.From that point both developers and System Administrators still have chapters 6 to 11 to get deeper knowledge of more areas of expertise regarding Docker ecosystem.Summarizing, if you buy this book you'll get a very comprehensive and easy way to master Docker technology in a very short time.
Amazon Verified review Amazon
Venkatesh Bhat Aug 15, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This is a great reference book for cloud developers, from novice to expert. It covers nearly all features with docker container, followed by a hands-on example.It effectively demonstrates the advantages of running multiple containers within a virtual machine instead of spinning up a virtual machine for every application.The book is well written in simple terms and could be easily used for preparing presentation about docker features.Most recommended for container enthusiasts.
Amazon Verified review Amazon
incognito.programmer Aug 13, 2015
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
I truly enjoyed this book. Pretty easy reading for the most part. After reading this book I went from 0 to being able to have an educated conversation with others about docker, and dare I say it maybe get a container or two running! (Haven't done it yet, as I haven't had the time).The only knock from me on this book is the part about security. I felt like that chapter could've been better.
Amazon Verified review Amazon
Fran Oct 11, 2016
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
Is not bad, direct, no verbose, handy, easy to find all the topics and doubts. Maybe I miss a little some more examples with the docker run command line, because to be honest just appear a couple of times, which is quite annoying, but ok.
Amazon Verified review Amazon
Jascha Casadio Nov 22, 2015
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2
At the beginning of November 2015, Docker 1.9 was released and with it multi-host networking was introduced. At the same time, Swarm finally reached a stable state that guaranteed it the label of production-ready. The DockerCon that took place in Barcelona was a success, confirming 2015 has been a great year for that blue whale. The strong impact containers had on the IT world is reflected on the one hand by the many companies investing on it, and on the other by the humongous amount of blog posts and books dedicated to it. In a scenario where some must-have title has already been released (see the bottom for suggested titles), Learning Docker places itself as an introductory text that targets professionals and enthusiasts interested in getting a quick taste of this new technology.Docker is one of those technologies that I am particularly interested in. I have been reading a lot about it, from the official documentation up to blogs, passing through that horde of books that made it up to the Amazon’s shelves. Getting through these 200 pages took me less than two days, mainly because none of the topics covered was new to me. But let’s dive into it!The very first thing that I have noticed about this title is the complete lack of background about what Docker is and, mainly, how it works under the hood. I did not find a single paragraph describing what a union mount is. Union mounts are one of the many key concepts of Docker that are not explained at all. Another concept that is not explained at all is, for example, that of the build context. Mind, the term build context appears all over the book, but the reader is not told what it is. The examples that show how to build an image use it without making it clear that the build context is that lone dot at the very end of the command. Concepts such as name spaces and cgroups are, instead, briefly described at the very end of the book, in the chapter dedicated to security.Another thing I did not appreciate much is the quality of the diagrams used to present the concepts being explained. They are colorful yes, but they could have been definitely better. But diagrams apart, do we really need screenshots to guide us through the signup form of the Docker Hub?The examples presented by the authors are very simple. Throughout the book there is not a single real-world example, nothing that gets beyond the containers’ equivalent of an Hello World! in C. Still, this is a very beginners’ book. This also means that topics such as Kubernetes or Mesos are not touched at all.Tying it all up, a very beginners’ book that I did not like but that someone completely new to the subject could find easy to read to get started. Still, the book can’t keep up with the competition: beginners should prefer passing through each and every page of the official documentation and, optionally, Turnbull’s The Docker Book.Suggested readings:The Docker Book: an user friendly, concise introduction to Docker. While it does not cover many advanced topics, it’s by far the best covering the basics.Docker Hands on: while not helpful to beginners, it offers the reader many advanced topics that can’t be found anywhere else.Docker: Up and Running: a very good text that focuses on advanced topics, mainly containers security.As usual, you can find more reviews on my personal blog: http://books.lostinmalloc.com. Feel free to pass by and share your thoughts!
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.