Docker with Kubernetes

Live Online (VILT) & Classroom Corporate Training Course

Docker is a popular platform for containerization & using this application components and infrastructure can be separately containerized and run by a single OS kernel. Using Kubernetes, you can automate the deployment, management, and scaling of your containers.

How can we help you?

  • CloudLabs
  • Projects
  • Assignments
  • 24x7 Support
  • Lifetime Access

Docker with Kubernetes

Overview

Docker and Kubernetes represent how modern systems are developed and deployed for the highest degree of agility, scalability, and reliability. The first half of this training covers how to use Docker containers for speeding-up development and test cycles. The second half of this training covers how to use Kubernetes with containers for easy and reliable deployment of large-scale distributed systems and help them scale and self-heal as and when needed.

Objectives

At the end of this training, participants will be able to

  • Create Docker images

  • Create and manage Docker containers

  • Use Docker bridge network for development and testing distributed systems

  • Use Docker Volumes to manage persistent data

  • Use Docker Compose to build multi-container applications

  • Use Docker Compose to build multi-container applications
  • Create Kubernetes cluster on Cloud

  • Configuring application components for Kubernetes deployment

  • Deploy and scale applications using Kubernetes

  • Use persistent storage, networking, automating deployment, scaling, and management of containerized applications
  • Logging and monitoring in Kubernetes

Prerequisites

Participants should have:

  • Understanding of basic LINUX shell commands for
  • Navigating through filesystem – ls, cd
  • Editing files – vi/vim/nano/emacs or any other LINUX editor
  • Executing commands – ps, kill, cat

Course Outline

Module 12022-11-02T13:16:39+05:30

Docker Container Overview

  • What are containers?
  • Comparison with Virtual Machines
  • Why use containers?
  • Docker container and alternatives
  • Docker architecture
  • Docker registry
Module 22022-11-02T13:21:52+05:30

Docker Setup

  • Install Docker
  • Install Docker Compose
  • Start the Docker Daemon
  • Validate Docker Install
Module 32022-11-02T13:23:31+05:30

Docker Images

  • Dockerfile configuration for image creation
  • Building images
  • Management of images
  • Listing and Removing Images
  • Searching for Images
  • Downloading Images
  • Uploading Images
  • Export/Import Images
  • Save/Load Images
  • Lab Exercise
  • Create docker images for
  • UI
  • Microservices
  • Database
  • Verify installation of software dependencies
Module 42022-11-02T13:26:00+05:30

Docker Containers

  • Starting containers
  • Managing containers
  • Listing Containers
  •  Stopping, Starting, and Removing Containers
  • Running Commands in a running container
  • Copying files in/out of Containers
  • Monitoring container logs
  • Networking for containers
  • Docker DNS
  • Host Network
  • Bridge Network
  • Lab Exercise
  • Run docker containers for
  • UI
  • Microservices
  • Database
  • Verify end-to-end container communication
Module 52022-11-02T13:27:48+05:30

Docker Volumes

  • Volumes for persistence
  • Managing volumes
  • Create volumes
  • Remove volumes
  • Lab Exercise
  • Create volumes for
  • DB data
  • Application logs
  • Verify DB data and application log persistence
Module 62022-11-02T16:50:17+05:30

Docker Compose

  • Working with multiple containers
  • Configuring docker-compose
  • Managing containers with docker-compose
  • Build, Start, Stop, Remove, Log
  • Scaling containers
  • Lab Exercise
  • Start & stop containers
  • UI, Microservices, Database
  • Verify scalability with multiple instances
Module 72022-11-02T16:52:49+05:30

Kubernetes Overview

  • Docker Swarm for multi-machine deployment
  • Kubernetes as the superior alternative
  • Kubernetes Architecture
  • Cluster
  • Control plane
  • Nodes
  • Cluster Topology
  • DNS
  • Workloads
  • Pods
  • Deployment
  • Statefulset
  • Job
  • Services
  • Load balancer
  • Node port
  • Ingress
  • Operations
  • Autoscaling
  • Health Checks
  • High Availability
  • Rolling upgrades
Module 82022-11-02T16:54:31+05:30

Kubernetes Setup

  • Install kubectl
  • Creating Kubernetes cluster on cloud
  • Creating cluster nodepool
  • Creating container registry on cloud
  • Uploading docker images to container registry
  • Lab Exercise
  • Upload docker images to registry
  • UI, Microservices, Database
  • Create K8s cluster and nodepool
Module 92022-11-02T16:56:20+05:30

Kubernetes Configuration

  • Service configuration
  • Load Balancer
  • Node Port
  • Workload configuration
  • Pods
  • Deployment
  • Statefulset
  • Job
  • Volume configuration
  • Persistent volumes
  • Persistent volume claims
  • Config maps
  • Secrets
  • Resource limits
  • Horizontal pod autoscaler
  • Lab Exercise
  • Create configuration files for:
  • Webapp, Microservices, Database
  • Environment variables
  • Resources
  • Liveness & Readiness probes
Module 102022-11-02T16:58:37+05:30

Kubernetes Deployment & Operations

  • Kubectl commands
  • Apply/Create/Delete configuration
  • Viewing pods and services
  • Connecting to pods and containers
  • Viewing logs
  • Lab Exercise
  • Create persistent volumes and claims
  • Create/Apply & Delete configurations
  • Start/Stop Services
  • Load-balancers
  • Start/Stop Workloads
  • WebApp, Microservices, Database
  • Verify autoscaler under user load
  • Verify high availability by killing some instances
  • Verify rolling upgrade
  • Delete nodes and clusters
2023-01-06T15:25:50+05:30

Title

Go to Top