In the rapidly evolving world of software development and deployment, containerization has become the cornerstone of modern DevOps practices. This comprehensive 2-day hands-on workshop will equip you with a solid foundation in Docker and Kubernetes, the most popular tools for container management and orchestration. Designed for developers, IT professionals, and system architects, this course provides an immersive experience, blending theory with practical labs.
OBJECTIVES
- Understand the core concepts of containers and how they differ from traditional virtual machines.
- Master Docker commands to manage containers, images, and networks.
- Learn how to write Dockerfiles and create custom images for your applications.
- Manage multi-container applications using Docker Compose for real-world projects.
- Grasp the architecture and components of a Kubernetes cluster.
- Deploy and manage containerized applications with Pods, Deployments, and Services.
- Understand networking, storage, and how to use ConfigMaps and Secrets for configuration management.
- Get an introduction to advanced topics like Helm and CI/CD integration for Kubernetes workflows.
WHO SHOULD ATTEND?
- Developers looking to containerize applications for better portability and scalability.
- DevOps Engineers aiming to streamline deployment pipelines with Docker and Kubernetes.
- System Administrators wanting to modernize infrastructure management with container orchestration.
PREREQUISITES
- Basic knowledge of Linux command line and networking concepts.
- Familiarity with software development and web applications is helpful but not mandatory.
ALL PARTICIPANTS WILL RECEIVE
- Training manuals/documentation.
- Certification upon completion of the Orchestrate – Docker & Kubernetes Bootcamp.
- Excellent care and attention from instructors and staff.
- Unlimited attendance to the Orchestrate – Docker & Kubernetes Bootcamp (limited to 5 repeat attendees per training session; if you wish to attend the workshop again, please contact our Facebook Page, Line, Email, or other channels to reserve your seat).
- If you are unable to attend the training session this time, you can reschedule your participation according to the training schedule.
- Confidence in deploying, managing, and scaling containerized applications.
- Essential skills for building cloud-native microservices using Docker and Kubernetes.
- Knowledge to kickstart your journey into DevOps automation and cloud orchestration.
OUTLINE
- Introduction to Containers and Docker
- Understanding Containers vs. Virtual Machines
- What is Docker, and why use it?
- Installing Docker (Windows, macOS, Linux)
- Working with Docker Containers
- Docker Architecture and Components
- Docker CLI Commands: Pulling Images from Docker Hub
- Docker CLI Commands: Running and Stopping Containers
- Docker CLI Commands: Managing Container Lifecycle
- Hands-on: Running a Hello World Container
- Hands-on: Running Nginx or Node.js in a Container
- Docker Images
- Understanding Docker Images and Layers
- Creating Docker Images with Dockerfiles
- Hands-on: Writing a Simple Dockerfile
- Hands-on: Building Custom Images
- Hands-on: Tagging and Pushing Images to Docker Hub
- Docker Networking
- Networking Basics in Docker
- Bridge, Host, and Overlay Networks
- Hands-on: Linking Containers
- Hands-on: Creating a Custom Bridge Network
- Docker Volumes and Persistent Storage
- Introduction to Volumes and Bind Mounts
- Managing Volumes
- Hands-on: Using Volumes to Persist Data
- Docker Compose
- Overview of Docker Compose
- Writing a docker-compose.yml File
- Hands-on: Running Multi-Container Applications with Docker Compose
- Introduction to Kubernetes
- Understanding Kubernetes Concepts
- Installing Minikube or Using Kubernetes in the Cloud
- Kubernetes Components and Architecture
- Overview of Key Components: API Server, etcd, Scheduler, Controller Manager, kubelet
- Role of kubectl Command-Line Tool
- Managing Pods and Deployments
- Creating and Managing Pods
- Deployments and ReplicaSets
- Hands-on: Creating a Deployment
- Hands-on: Scaling and Updating a Deployment
- Services and Networking
- Service Types: ClusterIP, NodePort, LoadBalancer
- Ingress for HTTP/HTTPS Traffic
- Hands-on: Exposing a Deployment with a Service
- Hands-on: Setting up an Ingress Controller
- ConfigMaps and Secrets
- Using ConfigMaps for Configuration
- Managing Sensitive Data with Secrets
- Hands-on: Creating and Using ConfigMaps
- Hands-on: Managing Secrets
- Storage in Kubernetes
- Persistent Volumes and Persistent Volume Claims
- Storage Classes
- Hands-on: Using Persistent Volumes and Claims