O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Docker Containers, Third Edition

Video Description

4+ Hours of Video Instruction

Docker Containers LiveLessons takes you through your first experiences understanding, running, building, and managing Docker container, and then leads you into container orchestration with OpenShift and Kubernetes.

Overview

With cloud computing, applications need to move around efficiently and run almost anywhere. In this video, learn how you can create containerized applications with Docker that are lightweight and portable. First, Chris Negus shows you how to begin using Docker on Ubuntu, Red Hat Enterprise Linux, or Fedora systems (with options of Windows or Mac OS X). Then he shows you how to pull and push Docker container images from and to Docker registries. The next few lessons get you started running containers and investigating how they work. After that, you learn how to build your own Docker images. The video then examines orchestration tools, such as Kubernetes and Cockpit, and development tools, such as OpenShift, for deploying and managing containers. Finally, it provides some tips for developing your own Docker containers.

About the Instructor

Chris Negus has authored or co-authored dozens of books on Linux and UNIX, including the Red Hat Linux Bible (all editions), Linux Troubleshooting Bible, Linux Bible (now in its 9th edition), Linux Toolbox series, Linux Toys, Linux Toys II, and mostly recently, Docker Containers. Currently, Chris works for Red Hat, Inc., where he is a Red Hat Certified Architect (RHCA), Red Hat Certified Instructor and Examiner, and Principal Technical Writer. Early in his career, Chris worked for eight years with the organization at AT&T that developed the UNIX operating system.

Skill Level

  • Beginner to advanced
Learn How To
  • Run, stop, and restart Docker containers
  • Install Docker on standard Linux or specialized container operating systems
  • Set up a private OpenShift installation on Windows, Mac, or Linux with minishift
  • Set up a private Docker Registry or use OpenShift Registry
  • Create, run, and investigate Docker images and containers
  • Pull and push containers between local systems and Docker registries
  • Integrate Docker containers with host networking and storage
  • Orchestrate multiple containers into complex applications with Kubernetes
  • Build a Docker container to simplify application deployment
  • Launch a containerized application in OpenShift
  • Employ best practices when developing containerized applications
  • Create interesting and powerful containers
  • Investigate Docker supporting technology that is on the horizon
Who Should Take This Course
  • System administrators who need to create, deploy, and manage Docker containers
  • Application developers who want to understand which applications are most appropriate for containerization and what are best practices for adapting their applications to containers
Course Requirements
  • A basic understanding of running commands in Linux
  • Familiarity with Linux concepts such as networking, software repos, and storage
  • Familiarity with concepts related to deploying applications
Lesson Descriptions

Lesson 1: Welcome to Docker Containers and Beyond
In Lesson 1, you learn the benefits of running applications in Docker containers. You also learn where Docker came from, the components that make up Docker, and other initiatives that have grown up around the Docker project.

Lesson 2: Getting Docker Software
In Lesson 2, you learn how to get Docker software and start it on the operating system that you choose. It includes procedures for installing Docker on Fedora, Ubuntu, Red Hat Enterprise Linux distributions, as well as the lightweight Project Atomic operating system. It also describes how to install an OpenShift cluster on your Linux, Windows, or Mac system, to have a container development/deployment setup on your laptop or desktop.

Lesson 3: Using Docker Registries
In Lesson 3, you start using Docker registries. Docker registries are places where container images are stored. There is a public Docker registry available (referred to as the Docker Index or Hub), but you can also set up private registries to store your own containers. You can also explore the private container registry that comes with OpenShift.

Lesson 4: Starting Up Containers
In Lesson 4, you start running containers on your Linux system. Once a container is running, you can explore your container in different ways, and then start and stop the containers as needed.

Lesson 5: Making Docker Images from Containers
In Lesson 5, you take containers you have made by running commands on your local system and save them as images you can transport. Once you have transported your new Docker image to another system running Docker, you can load the image and run it on that system. Or you can push your new image to the Docker Hub or to a private registry.

Lesson 6: Keeping Your Docker Build System Healthy
In Lesson 6, you learn ways to query the state of your Docker system and ways to keep it healthy, such as removing containers and images left on your system that you no longer need.

Lesson 7: Building Docker Images
In Lesson 7, you learn how to build a Docker container image that includes everything needed to run an application.

Lesson 8: Tips for Building Containers
In Lesson 8, you learn some simple rules to get better results from the containers you run, build, and manage. In particular, working with software repositories, networking, and storage are given extra attention in this lesson. How to choose a useful base image or builder image as the foundation of your images is also covered.

Lesson 9: Orchestrating with Kubernetes and OpenShift
Lesson 9 introduces you to the concept of container orchestration—how to manage multiple containers in pods using replication controllers and services in Kubernetes. This includes a demonstration of an all-in-one Kubernetes master and node as well as an example of how to investigate a Kubernetes cluster. After that, you explore the Cockpit Web-based interface for managing containers.

Lesson 10: Developing Containerized Applications

Lesson 10 describes applications you should keep an eye on that are currently in development for deploying containerized applications.

Lesson 11: Digging into Advanced Networking and Storage
Lesson 11 starts with descriptions for setting up default networking for your Docker systems, as well as how to change networking for individual containers. After that, it tells how containers can use storage from the host computer by mounting volumes and how to share storage volumes among containers.

Lesson 12: Running Super Privileged Containers
In Lesson 12, you learn about how Docker relies on the Linux Container feature (LXC) to separate containers from the Linux host. Building on that knowledge, you learn how to open containers to individual name spaces on the host or open containers completely to the host using what are referred to as super privileged containers.

Lesson 13: Going Further with Docker
In Lesson 13, you learn advanced security techniques and examine interesting Dockerfile files to see how others build containers. Next, you see commands such as atomic, runc, buildah, and skopeo to work with containers without the Docker service.

About Pearson Video Training

Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que Topics include: IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more. Learn more about Pearson Video training at http://www.informit.com/video.

Table of Contents

  1. Introduction
    1. Docker Containers: Introduction 00:04:17
  2. Lesson 1: Welcome to Docker Containers and Beyond
    1. Learning objectives 00:00:57
    2. 1.1 Use containers to deliver applications efficiently 00:07:51
    3. 1.2 Understand how containers change applications 00:11:33
    4. 1.3 Explain how containers are used across an enterprise 00:02:58
  3. Lesson 2: Getting Docker Software
    1. Learning objectives 00:01:19
    2. 2.1 Choose a Docker environment 00:09:07
    3. 2.2 Set up Docker in Fedora 00:05:05
    4. 2.3 Set up Docker in Ubuntu 00:03:34
    5. 2.4 Set up Docker in Red Hat Enterprise Linux 00:04:25
    6. 2.5 Set up OpenShift on Linux, Windows, or Mac 00:19:20
    7. 2.6 Set up a Fedora Atomic host 00:09:22
  4. Lesson 3: Using Docker Registries
    1. Learning objectives 00:00:53
    2. 3.1 Use the public Docker registry 00:05:44
    3. 3.2 Create private Docker registries 00:05:53
    4. 3.3 Push and pull Docker images 00:06:38
    5. 3.4 Use an OpenShift registry 00:04:43
  5. Lesson 4: Starting Up Containers
    1. Learning objectives 00:00:47
    2. 4.1 Launch an existing container 00:11:27
    3. 4.2 Check out a running container 00:07:11
    4. 4.3 Manipulate containers (run, stop and start) 00:04:24
  6. Lesson 5: Making Docker Images from Containers
    1. Learning objectives 00:00:54
    2. 5.1 Save containers to images 00:05:01
    3. 5.2 Tag an image 00:03:31
    4. 5.3 Commit an image to a registry 00:01:15
  7. Lesson 6: Keeping Your Docker Build System Healthy
    1. Learning objectives 00:00:32
    2. 6.1 Monitor your Docker system 00:09:50
    3. 6.2 Remove containers and images 00:07:33
  8. Lesson 7: Building Docker Images
    1. Learning objectives 00:00:30
    2. 7.1 Understand Dockerfile files 00:02:14
    3. 7.2 Choose what goes into a Dockerfile file 00:04:36
    4. 7.3 Use Docker build to build container images 00:13:54
  9. Lesson 8: Tips for Building Containers
    1. Learning objectives 00:00:51
    2. 8.1 Employ general rules for building containers 00:02:15
    3. 8.2 Configure software repositories, networking, logging and storage 00:04:32
    4. 8.3 Choose base container images 00:15:07
  10. Lesson 9: Orchestrating with Kubernetes and OpenShift
    1. Learning objectives 00:01:20
    2. 9.1 Understand Kubernetes 00:17:22
    3. 9.2 Start an application with OpenShift 00:08:19
    4. 9.3 Manage containers with Cockpit 00:08:16
  11. Lesson 10: Developing Containerized Applications
    1. Learning objectives 00:00:47
    2. 10.1 Choose container development tools 00:06:01
    3. 10.2 Get involved with Docker development 00:01:46
    4. 10.3 Use techniques for building containers 00:11:31
  12. Lesson 11: Digging into Advanced Networking and Storage
    1. Learning objectives 00:00:43
    2. 11.1 Choose container networking 00:10:23
    3. 11.2 Add storage to containers 00:09:40
  13. Lesson 12: Running Super Privileged Containers
    1. Learning objectives 00:00:49
    2. 12.1 Understand Linux namespaces 00:14:18
    3. 12.2 Run super privileged containers 00:13:02
  14. Lesson 13: Going Beyond Docker Containers
    1. Learning objectives 00:01:19
    2. 13.1 Explore advanced container security 00:12:46
    3. 13.2 Examine interesting Dockerfile files 00:10:26
    4. 13.3 Run containers without Docker 00:15:22
    5. 13.4 Follow container features on the horizon 00:03:27
  15. Summary
    1. Docker Containers: Summary 00:00:49