Docker & Kubernetes course

About Docker and Kubernetes

Docker is a very popular framework for building, shipping and running distributed applications. It eases the deployment process.

Kubernetes is a popular framework for managing container deployments on a cluster. In this course, the students will learn the concepts of Kubernetes (e.g., Pods, ReplicaSets, Deployments, Services) as well as deployment patterns and best practices.

The course includes extensive hands-on exercises will are crucial to the understanding of the topics.

Abstract

In this course, the students understand the concepts, architecture and user-cases of Docker. The course involves extensive hands-on exercises which are crucial to the understanding of the Docker mechanics.

Target Audience

    • Developers
    • DevOps
    • System Administrators

Prerequisites

    • Basic Linux commands
    • Basic Programming Concepts (control flows, conditionals, scripting)

There are no upcoming events at this time.

What will you learn?

  • Docker Intro:

    • The problem domain
    • How Docker works
    • Linux namespaces
    • cgroups
    • Docker vs VM
    • Docker architecture
    • Installing Docker
  • Understanding basic Kubernetes Concepts

    • An overview of images and containers
    • Pods
    • Labels & Selectors
    • Replica Sets (and Replication Controllers)
  • Containers:

    • Running containers
    • 3rd party containers
    • Logging
    • Managing containers
  • Using Deployments to manage your services declaratively

    • Update management and update strategies
    • Deploy multiple revisions
    • Blue/green deployment
    • Canary release strategies
    • Audit releases (event log)
  • Volumes:

    • Mounting volumes to a container
    • Managing volumes
    • Listing
    • Deleting
    • Using data containers
  • Services

    • How services work
    • Load balancing
    • Virtual service IP
    • Abstract away backends (simple local database/external database)
    • Talking to services
    • Environment variables
    • DNS (A cluster addon)
    • Headless services
  • Building images:

    • Dockerfile syntax
    • FROM, ADD, RUN, CMD ..
    • Build configuration
    • Image caching
    • Managing Docker images
    • Tagging
    • Publishing to registry
    • Deletion
  • Secrets and ConfigMaps

    • Daemon Sets and Jobs
    • Communicate with daemons
    • Push
    • NodeIP
    • DNS
    • Service
    • Jobs types
    • Non-parallel
    • Parallel and fixed completion count
    • Parallel with a work queue
    • The syllabus includes a virtual lab for each section.
  • Docker compose:

    • Docker compose syntax
    • Services
    • Build definitions
    • Inheritance
    • Networking
    • Docker-compose cli api

Interested in learning about DevOps?
Contact us for information about upcoming classes and private workshops.