Docker and Kubernetes — Detailed Course Outline
Copyright © 2019 - 2020, Anderson Software Group, Inc.
Section 1 - Docker Overview
- Microservices and Containers
- Monolithic vs. Microservice
- Containers vs. Virtual Machines
- Docker Platform
- Docker Architecture
- Docker Commands
Section 2 - Working with Docker
- Dockerfiles
- Dockerfile Instructions
- Building Images
- Shell and Exec Forms
- Docker Volumes
- Bind Mounts
- Mapping and Sharing Files
- Web Service Containers
- Multi-Stage Builds
Section 3 - Kubernetes Overview
- What is Kubernetes?
- What Does Kubernetes Do?
- Why Use Kubernetes?
- Kubernetes Features
- Cluster Components
- Platform Architecture
- Core Concepts
- Minikube and kubectl
- Kubernetes Deployment
- Port Forwarding
Section 4 - Working with Pods
- Kubernetes Objects
- Pod Manifests
- Creating Pods
- Labels and Label Selectors
- Annotations
- ReplicaSets
- Inspection
- Scaling
- Changing Labels
- Deletion
Section 5 - Services and Deployments
- Imperative and Declarative Services
- Named Ports
- Service Discovery
- NodePorts and Load Balancers
- Ingress Resources
- Imperative and Declarative Deployments
- Multiple Resources
- Rolling Updates
- Rollbacks
- Deployment Strategies
Section 6 - Volumes
- Why Use Volumes?
- Volume emptydir
- File Sharing
- Memory Mapping
- Volume hostpath
- Persistent Volumes
- Persistent Volume Claims
- Recycling Persistent Volumes
- Dynamic Provisioning
- Storage Classes
Section 7 - ConfigMaps and Secrets
- Why Use ConfigMaps?
- Creating ConfigMaps
- Accessing ConfigMaps
- Why Use Secrets?
- Creating Secrets
- Decoding Secrets
- Accessing Secrets
Section 8 - StatefulSets
- Why Use StatefulSets?
- Deployments vs. StatefulSets
- Creating StatefulSets
- Stateful Pods
- Volume Claim Templates
- Headless Services
- API Server Proxy
- Deleting StatefulSets