Docker Containers

Video description

4+ Hours of Video Instruction

Docker Containers LiveLessons takes you through your first experiences understanding, running, building and managing Docker containers. These hands-on lessons help you explore Docker containers, registries, and run-time environments. It then extends that experience into container orchestration with Kubernetes.

Description

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 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 container 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

Christopher Negus is a Red Hat Certified Architect (RHCA) and principal technical writer for Red Hat, Inc. Currently, he is working on Linux containers in Docker format, Project Atomic, Kubernetes, and OpenStack projects.

Chris has authored dozens of books on Linux and open source software, including the Linux Bible, Red Hat Linux Bible, Linux Toolbox series, Linux Toys, and Live Linux CDs. He is a Red Hat Certified Instructor (RHCI) and Red Hat Certified Examiner, (RHCX). His RHCA certification includes expertise in Red Hat Enterprise Virtualization (RHCVA), Red Hat Clustering and Storage Management, and Red Hat Enterprise Deployment and Systems Management. Earlier in his career, Chris worked at AT&T Bell Laboratories on the UNIX System V development team.

Skill Level

  • Beginner to Intermediate

What You Will Learn

  • What Docker is and why you need it, including the basics of running, stopping, and restarting Docker containers
  • Installing Docker on standard Linux or specialized container operating systems
  • Setting up a private Docker Registry
  • Creating, running, and investigating Docker images and containers
  • How to pull and push containers between local systems and Docker Registries
  • Integrating Docker containers with host networking and storage
  • Orchestrating multiple containers into complex applications with Kubernetes
  • How to build a Docker container to simplify application deployment
  • Employing best practices when developing containerized applications
  • How others are creating their own interesting and powerful containers
  • The latest 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 what 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 1: Welcome to Docker Containers
In Lesson 1, "Welcome to Docker Containers," 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, "Getting Docker Software," 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.

Lesson 3: Using Docker Registries
In Lesson 3, "Using Docker Registries," 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.

Lesson 4: Starting Up Containers
In Lesson 4, "Starting Up Containers," 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, "Making Docker Images from Containers," 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 could push your new image to the Docker Hub or to a private registry.

Lesson 6: Keeping Your Docker Build System Healthy
In Lesson 6, "Keeping Your Docker Build System Healthy," 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, "Building Docker Images," 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, "Tips for Building Containers," 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.

Lesson 9: Orchestrating Docker Containers
Lesson 9, "Orchestrating Docker Containers," 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 set up a Kubernetes cluster. After that, you explore the Cockpit Web-based interface for managing containers.

Lesson 10: Developing Containerized Applications
Lesson 10, "Developing Containerized Applications," 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, "Digging into Advanced Networking and Storage," 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, "Running Super Privileged Containers," 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, "Going Further with Docker," you extend the knowledge you gained in earlier lessons to explore other containerization tools. Next, you see techniques others have developed for creating Dockerfiles for building containers and see a few containers for playing games.

About LiveLessons Video Training

The LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at http://www.informit.com/livelessons.

Table of contents

  1. Introduction
    1. Docker Containers: Introduction 00:02:23
  2. Lesson 1: Welcome to Docker Containers
    1. Learning Objectives 00:00:28
    2. 1.1 Use containers to deliver applications efficiently 00:07:51
  3. Lesson 2: Getting Docker Software
    1. Learning Objectives 00:00:54
    2. 2.1 Choose a Docker environment 00:02:47
    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 Choose a Docker run-time environment 00:02:11
    7. 2.6 Set up a Fedora Atomic host 00:04:55
  4. Lesson 3: Using Docker Registries
    1. Learning Objectives 00:00:48
    2. 3.1 Use the public Docker index 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. 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: Bulding 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:37
    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
  10. Lesson 9: Orchestrating Docker Containers
    1. Learning objectives 00:00:49
    2. 9.1 Orchestrate Docker container pods with Kubernetes 00:12:01
    3. 9.2 Orchestrate multi-node containers with Kubernetes 00:10:23
    4. 9.3 Manage containers with Cockpit 00:08:28
  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 Learn 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 name spaces 00:14:18
    3. 12.2 Run super privileged containers 00:13:02
  14. Lesson 13: Going Further with Docker
    1. Learning Objectives 00:00:55
    2. 13.1 Explore more container tools 00:06:49
    3. 13.2 Examine interesting Dockerfile files 00:10:26
    4. 13.3 Try gaming and other fun containers 00:04:11
  15. Summary
    1. Docker Containers: Summary 00:00:50

Product information

  • Title: Docker Containers
  • Author(s):
  • Release date: October 2015
  • Publisher(s): Pearson
  • ISBN: 0134397517