Docker and Kubernetes Core Concepts

Docker and Kubernetes Core Concepts
Instructor: Dan Wahlin

Course Length: 5 Days

Course Description

Containers have revolutionized the process of developing and deploying applications. They offer many benefits including consistency between environments, predictable deployments, application scaling, management of microservices, and more. While this all sounds great in theory, how do you integrate containers into your existing business processes and reap the benefits they offer? How do you manage containers in production, scale and monitor them, and fix issues that come up?

The Docker and Kubernetes course provides a hands-on look at containers and the role they can play in your development and deployment environments and workflows. You'll learn about the many benefits containers provide, how you can use containers in your environment to work with web servers, databases (and more), key Docker tools and commands that you need to learn to use Docker effectively, how to work with images and containers, as well as how to get a fully functional container environment up and running.

After learning the ins-and-outs of containers, the course provides information on how Kubernetes can be used to orchestrate containers. This includes providing a look at the different components that Kubernetes provides (pods, deployments/replicasets, services and more), how to deploy containers, troubleshoot pods, and working with Kubernetes in the cloud.

If you've heard about Docker and Kubernetes and been wondering how to get started using them then this course is for you!

This course is taught by Dan Wahlin - a member of the Docker Captains group.


  • Comfortable using command-line tools and virtual machines
  • General familiarity with software development
  • General familiarity with software deployment


DevOps, IT admins, or developers looking to get started using Docker and Kubernetes.

Course Outline

  1. Getting Started with Docker
    • Application Deployment
    • Shipping with Containers
    • Getting Started with Docker
    • Benefits to Developers and DevOps
    • Overview of Images and Containers
    • Layered File System
    • Containers vs Virtual Machines
    • Docker and Microservices

  2. Docker Images and Containers
    • Container Registries
    • Working with Images
    • Working with Containers
    • Getting Started with a Custom Dockerfile
    • Building an Image
    • Updating an Image
    • Pushing an Image to a Registry

  3. Containers and Volumes
    • Components Overview
    • Source Code and Containers
    • Introduction to Volumes
    • Creating a Volume
    • Inspecting Volumes
    • Defining a volume in a Dockerfile
    • Local Source Code and Containers

  4. Orchestrating Containers with Docker Compose
    • Container Orchestration
    • Getting Started with Docker Compose
    • The docker-compose.yml File
    • Docker Compose Commands

  5. Introduction to Kubernetes
    • Why Kubernetes?
    • The Big Picture
    • The Master Node
    • Worker Nodes and Pods
    • Services, ReplicaSets, and Deployments
    • Files and kubectl Commands
    • The Web UI Dashboard

  6. Working with Pods
    • The Role of Pods
    • Getting a Pod Up and Running Quickly
    • Defining a Pod with YAML
    • Labels
    • Multi-Container Pods
    • Pod Health
    • Troubleshooting Pods and Containers

  7. ReplicaSets and Deployments
    • The Role of ReplicaSets
    • Defining ReplicaSets
    • Working with ReplicaSets
    • The Role of Deployments
    • Defining Deployments
    • Working with Deployments

  8. Working with Services
    • The Role of Services
    • Service Types
    • Creating a Service
    • Service Discovery Process
    • Port Forwarding

  9. Updates and Rollbacks
    • Updating Pods
    • Zero-Downtime Deployments
    • Blue-Green Deployments
    • Rolling Updates
    • Rolling Back Deployments

  10. Storage, ConfigMaps, and Secrets
    • Volumes and Mounts
    • PersistentVolumes and PersistentVolumeClaims
    • StorageClasses
    • ConfigMaps
    • Secrets

  11. Kubernetes in the Cloud with AKS
    • Introduction to Azure Kubernetes Service (AKS)
    • Azure CLI
    • Creating an AKS Cluster
    • Additional Tools
      • Helm
      • Draft
      • Azure Dev Spaces


Join Our Development Newsletter!