Course Outline

[Day 01]

Introduction

  • Containers vs virtual machines
  • Speed and performance

Overview of Docker architecture

  • Docker and the Linux kernel
  • Docker components (Docker client, Docker daemon, images, registry, containers)

Using Docker to run and manage containers

  • Images, containers, volumes, networks

Brief overview of container orchestration

Installing Docker

Pulling an image from the internet

  • Sample: Apache Tomcat

Running the container

Docker registries

  • Public vs private

Creating and managing Dockerfiles

Building a Docker image

Deploying a web application

  • Sample application: Java EE application server

How Docker containers communicate with each other

Configuring volumes and networks in Docker

  • Linking and state


[Day 02]

Deep dive into container orchestration with Kubernetes

Overview of Kubernetes architecture

  • Pods, labels/selectors, replication controllers, services, API

Installing a Kubernetes cluster

Creating Kubernetes pods, volumes and deployments

Grouping and organizing your cluster

Discovering and publishing services

Discovering and connecting to containers

Deploying a web application

  • Handling application components
  • Handling Database connections

Kubernetes security

  • Authentication & authorization

Advanced networking

  • Docker networking vs Kubernetes networking

Monitoring Kubernetes

  • Cluster logging with Elasticsearch and fluentd
  • Container level monitoring (cAdvisor UI, Influxdb, Prometheus)


[Day 03]

Scaling your Kubernetes cluster

Infrastructure for Kubernetes

  • Provisioning, partitioning, networking

Building a high-availability cluster

  • Load balancing and service discovery

Deploying a scalable application

  • Horizontal pod autoscaling
  • Database clustering in Kubernetes

Updating your application

  • Releases in Kubernetes

Troubleshooting

Closing remarks

Requirements

  • Familiarity with the Linux command line
  • A basic understanding of virtualization concepts
  • An understanding of networking concepts
  • An understanding of how web applications work

Audience

  • Software Developers
  • Architects
  • Deployment engineers
  21 Hours
 

Testimonials

Related Courses

PouchContainer

  21 hours

Deploying Kubernetes Applications with Helm

  7 hours

Running Containers Directly from Kubernetes with CRI-O

  14 hours

Docker and Kubernetes

  21 hours

Docker (introducing Kubernetes)

  14 hours

Managing Kubernetes with Rancher

  14 hours

OpenShift 4 for Administrators

  35 hours

Docker, Kubernetes and OpenShift 3 for Administrators

  35 hours

OpenShift 4 for Developers

  35 hours

Docker, Kubernetes and OpenShift 3 for Developers

  35 hours

Kubernetes from Basic to Advanced

  14 hours

Kubernetes on AWS

  14 hours

Kubernetes on Azure (AKS)

  14 hours

Kubernetes Design Patterns

  21 hours

Kubernetes Advanced

  14 hours