Ưu đãi trong tuần: Nhập mã UD50 giảm 50k cho đơn từ 300k!
Trang chủ
Menu

Mastering Docker & Kubernetes: Hands-On Guide with AWS

Thành thạo Docker & Kubernetes: Hướng dẫn thực hành với AWS

Thành thạo Docker & Kubernetes: Hướng dẫn thực hành với AWS

Dự án thực tế - Triển khai ứng dụng lên cụm Kubernetes sử dụng Jenkins CI/CD pipeline, Ansible, Docker, Webhook

4.4
(170 đánh giá)
1,590 học viên
Giảng viên
Shikhar Verma
Phụ đề Việt chất lượng cao Phụ đề tiếng Anh Bán chạy Đánh giá cao
50.000đ 349.000đ -86%
✓ Xem giỏ hàng và thanh toán
Bao gồm phụ đề tiếng Việt, tiếng Anh
13.5 giờ video
173 bài giảng
7 bài quiz
Truy cập vĩnh viễn
Học trên mọi thiết bị
Cập nhật: 30/05/2026

Bạn sẽ học được gì

Quản lý cụm Kubernetes như thế nào?
Tự tạo cụm Kubernetes từ đầu "The Hard Way"
Cách bảo mật cụm Kubernetes
Dự án thực tế: Sử dụng Jenkins CI/CD pipeline để triển khai ứng dụng lên cụm Kubernetes.
Kiến trúc cụm Kubernetes
Microservices vs. Monolithic
Các thành phần của Control Plane - API Server, Etcd, Scheduler, Controller Manager
Thiết lập môi trường cụm Kubernetes trên AWS
Các loại cụm
Cài đặt Minikube Server
Labels & Selectors
Scaling & Replication
ReplicationController & ReplicaSet
Deployment & Rollback
Mạng trong Kubernetes
Volumes trong cụm Kubernetes
Persistent Volumes
Giới thiệu Docker cơ bản cho người mới
Học kỹ thuật thực tế để tạo và triển khai container trên nền tảng Docker.
Xây dựng Docker image bằng Dockerfile & container qua bài tập thực hành
Quản lý dữ liệu & mạng trong Docker
Sử dụng Docker compose để tạo ứng dụng đa container
Phương pháp thực hành học Docker cho người mới bắt đầu
Namespaces trong Kubernetes
Quản lý tài nguyên cho Pod và Container
Kubernetes HPA - Horizontal Pod Autoscaler
Kubernetes Jobs, Init container
Câu đố kiểm tra

Yêu cầu

Máy tính để bàn hoặc laptop có kết nối internet
Phải có tài khoản AWS Free Tier
Cần có động lực học Docker, Kubernetes, DevOps

Đối tượng phù hợp

Dành cho quản trị hệ thống, lập trình viên, nhóm DevOps và chuyên gia IT muốn học Docker & Kubernetes

Nội dung khóa học

21 phần • 173 bài giảng
1 Giới thiệu khóa học
2 Cách bắt đầu khóa học?
3 Giới thiệu Kubernetes
4 Phương pháp Monolithic để phát triển ứng dụng
5 Microservices vs. Monolithic
6 Kubernetes Gateway API
7 Sự phát triển của Container, Docker & Máy ảo
8 Microservices chạy dưới dạng container
9 Kubernetes - Công cụ điều phối hoặc quản lý container
10 Tính năng của Kubernetes
1 Kiến trúc cụm Kubernetes
2 Hiểu kiến trúc qua ví dụ
3 Làm việc với Kubernetes
4 Các thành phần của Control Plane (Master Node)
5 Thành phần Scheduler của Control Plane
6 Thành phần Control manager của Control Plane
1 Thực hành 1
2 Thực hành 2
3 Thực hành 3
4 Thực hành 4
5 Thực hành 5
6 Thực hành 6
1 Các loại cụm Kubernetes
2 Cài đặt Minikube Server
3 Tạo Pod đầu tiên bằng YAML
4 Pods với YAML
5 Kiểm tra chi tiết về pod và logs của container đang chạy
6 Tạo pod với nhiều container
7 Chú thích (annotations) trong Kubernetes
8 Khám phá container đang chạy
9 Biến môi trường
10 Định nghĩa ports cho container
1 Tổng quan về Pod Restart Policies
2 Thực hành - Restart Policy: Always
3 Thực hành - Restart Policy: OnFailure
4 Thực hành - Restart Policy: Never
1 Labels & Selectors
2 Thực hành - labels & selectors
3 Cách khai báo Declarative vs. Imperative cho labels
4 Thực hành - Tìm pod với equality & set-based
5 Node Selectors
6 Thực hành - Tạo pod trên node chỉ định
1 Replication Controller - RC
2 Thực hành - Tạo Replicas của POD bằng RC
3 Scale-up & scale-down pod khi tải tăng
4 Replica set - RS
5 Thực hành - Tạo Replicas của POD bằng ReplicaSet
1 Tổng quan về Deployment và Rollback
2 Thực hành: Triển khai ứng dụng với hai POD bằng deployment object
3 Thực hành: Nâng cấp ứng dụng từ v1 lên v2 bằng deployment object
4 Thực hành: Roll back ứng dụng về phiên bản trước
5 Thực hành: Roll back ứng dụng về phiên bản cụ thể
1 Tổng quan về mạng trong kubernetes
2 Thực hành - Giao tiếp container qua localhost
3 Giao tiếp Pod-to-pod
4 Đối tượng Service
5 Thực hành 1 - Truy cập ứng dụng web bằng Cluster IP
6 Thực hành 2 - Truy cập ứng dụng web bằng Cluster IP
7 Thực hành - Truy cập ứng dụng/dịch vụ bằng NodePort từ bên ngoài cụm
1 Volumes trong cụm Kubernetes
2 Thực hành: Tạo POD với volume emptyDir
3 Thực hành - Gắn volume chia sẻ cho các container trong một POD
4 Thực hành: Tạo POD với volume hostpath
5 Thực hành - Xóa pod có gắn volume hostpath
1 Tổng quan về Persistent volumes
2 Persistent volumes trong cụm kubernetes
3 Cấu hình Volume bằng AWS ElasticBlockStore
4 Thực hành - Tạo PersistentVolumeClaim
5 Tạo Pod sử dụng PersistentVolume để lưu trữ
6 Thực hành - persistent volume vẫn tồn tại sau khi tạo lại pod
1 Tổng quan về Namespaces
2 Thực hành - Tạo namespaces mới
3 Thực hành - Tạo pods & services trong Namespaces
4 Thực hành - Chuyển đổi giữa các namespaces trong Kubernetes
5 Thực hành - Tạo pods trong namespaces
6 Thực hành - Xóa một namespace trong Kubernetes
1 Tổng quan về quản lý tài nguyên cho pods, containers
2 Thực hành - quota dựa trên tài nguyên
3 Thực hành - Áp dụng pod quotas trên namespaces
4 Requests và Limits
5 Thực hành - Đặt requests và limits cho mỗi container chạy trong pod
6 Thực hành - Áp dụng quotas trên namespaces
7 Thực hành - Tạo pods với tài nguyên trong namespaces
1 Cơ bản về autoscaling trong Kubernetes
2 Thực hành: Cấu hình Minikube Cluster
3 Thực hành: Cài đặt Metric Server
4 Thực hành: Tạo pods bằng deployment objects.
5 Thực hành: Cấu hình HPA - Horizontal Pod Autoscaler
6 Thực hành: Kiểm thử
1 Tổng quan về Jobs và mẫu cron job
2 Thực hành: Tạo Pod bằng Job Object
3 Thực hành: Chạy nhiều Pod song song bằng Job Object
4 Thực hành: Tạo jobs theo lịch lặp bằng CronJob
5 Giới thiệu về Init containers
6 Thực hành 1 - Tạo Init Containers
7 Thực hành 2 - Tạo Init Containers
1 Giới thiệu về container
2 Tổng quan về Docker
3 Thuật ngữ Docker
4 Cài đặt Docker
5 Tạo container đầu tiên
6 Lấy container image từ docker hub
7 Chạy container ở chế độ nền, tương tác với terminal tty
8 Xóa các docker đã thoát bằng một lệnh duy nhất
9 Lấy thông tin đầy đủ của container đang chạy
10 Kiểm tra logs & stats của container đang chạy
11 Chuyển tiếp cổng (port forwarding)
12 exec, đổi tên & khởi động lại container đang chạy
13 Gắn vào một container (attach)
14 Dừng/tiêu diệt, tạm dừng/tiếp tục container
15 Lệnh create, start, cp
16 Lệnh Export/Import trong Docker
17 Tạo image từ container đang chạy
18 Lấy image phiên bản cụ thể từ Docker hub
19 Đẩy image của bạn lên docker hub
20 Lịch sử image, kiểm tra & xóa image
1 Tổng quan về Dockerfile, kiến trúc phân lớp
2 Tạo image centos 7 bằng Dockerfile
3 Tổng quan về Label, env & lệnh run
4 Tổng quan về WORKDIR
5 Lệnh Copy, add và sự khác biệt
6 Tạo tài khoản người dùng với mật khẩu bằng dockerfile
7 Lệnh CMD
8 SSH vào container
9 Tổng quan về lệnh EXPOSE
10 ENTRYPOINT trong Dockerfile
1 Tổng quan về quản lý dữ liệu trong Docker
2 Volumes
3 Tạo & gắn volume vào container
4 Xóa volumes từ máy chủ Docker
5 Bind mounts
1 Bridge networking
2 Chạy container trong mạng bridge tự tạo
3 Cho phép giao tiếp giữa các docker thuộc mạng bridge khác nhau
4 Bật DNS với mạng bridge tùy chỉnh
5 Host networking
6 None networking
7 Kết nối một hoặc nhiều mạng vào container đang chạy
8 Tạo docker registry riêng tư
9 Tạo docker registry riêng tư - 2
1 Tổng quan về docker compose
2 Cài đặt Docker compose
3 Tạo file docker compose đầu tiên
4 Tạo file docker compose bằng ngôn ngữ json
5 Học lệnh cơ bản - 1
6 Học lệnh cơ bản - 2
7 Học lệnh cơ bản - Phần 3
8 Học lệnh cơ bản - Phần 4
9 Gắn volume và ánh xạ cổng bằng docker compose
10 Xây dựng image tùy chỉnh bằng docker compose
1 Tổng quan về dự án
2 Thực hành: 1
3 Thực hành: 2
4 Thực hành: 3
5 Thực hành: 4
6 Thực hành: 5
7 Thực hành: 6
8 Thực hành: 7
9 Thực hành: 8
10 Thực hành: 9
11 Thực hành: 10
12 Thực hành: 11
13 Thực hành: 12
14 Thực hành: 13
15 Thực hành: 14
16 Thực hành: 15
17 Thực hành: 16
18 Thực hành: 17
19 Thực hành: 18
20 Thực hành: 19
21 Thực hành: 20
22 Thực hành: 21
23 Bài học cuối cùng

Giới thiệu khóa học

Course Description:

Section 1: Kubernetes Introduction

  • What is Kubernetes

  • Why do we use Kubernetes?

  • Monolithic approach for developing applications.

  • Microservices Vs. Monolithic

  • Kubernetes Gateway API

  • Evolution of Containers, Dockers & VMs

  • Microservices running as containers

  • Kubernetes - Orchestration or container management tool

  • Features of Kubernetes

Section2: Architecture of the Kubernetes Cluster

  • The architecture of the Kubernetes Cluster

  • Understand architecture with various examples

  • Working with Kubernetes

  • Roles of Master Node

  • Components of Control Plane (Master Node)

  • API Server

  • Etcd

  • Scheduler

  • Controller Manager

  • Kubelet

  • Service Proxy

  • POD

  • Container Engine - Docker, Containerd, or Rocket

Section 3: Setup of Kubernetes Cluster AWS Environment

  • Setup Kubernetes Master and Worker Node on AWS Environment

  • Update the System

  • Install HTTP package

  • Docker Installation

  • Setup open GPG Key

  • Install the Kubernetes packages

  • Bootstrapping the master node

  • Configure Worker Nodes

Section 4:  Kubernetes Concepts - Cluster types, Minikube Server, YAML, Pod, Kubelet, Ports

  • Kubernetes  Cluster

  • Types of Cluster

  • All-in-one (Single Node Cluster)

  • Single-node, single-master, and multi-worker node clusters.

  • Single-Node etcd, multi-Master, and Multi-Worker Node Cluster.

  • About Minikube 

  • Installation of Minikube Server

  • Create the first POD using manifest file written in YAML Language

  • Kubelet commands

  • Check logs of the container

  • Create multiple containers in a POD

  • Kubernetes Annotations

  • Variables in the YAML file

  • Defining Ports

Section 5: Kubernetes Pod Restart Policy

  • Overview of Pod Restart Policies

  • Three restart policies: Always, OnFailure & Never

  • Lab - Create a pod definition with ‘restartPolicy’ as Always

  • Lab - Create a pod definition with ‘restartPolicy’ as OnFailure

  • Lab - Change the pod definition a bit to check the working of OnFailure

  • Lab - 4. Create a pod definition with ‘restartPolicy’ as Never

Section 6: Labels & Selectors

  • Labels & Selectors

  • Commands for managing labels & selectors

  • Declarative vs. Imperative Kubernetes commands

  • Two types Selectors

  •   Equality Based

  •   Set based

  • Practice Lab - Labels & Selectors

  • Practice Lab - Assign a label to the running POD

  • Practice Lab - Search the pod with equality & set-based

  • Node Selector

  • Lab - Create a pod on a specific node

Section 7: Scaling & Replication

  • What is ReplicationController?

  • Features of RC

  • Practice Lab - Create Replicas of POD using RC

  • Practice Lab - Recreate the POD, if it crashes, fails, or terminated

  • Scale up & scale down the POD as the load increases

  • Practice Lab - Scale up & scale down the POD

  • What is ReplicaSet?

  • Difference between ReplicationController & ReplicaSet

  • Practice Lab - Create Replicas of POD using ReplicaSet

  • Practice Lab - Use set-based match expressions in RS

Section 8: Deployment & Rollback

  • Overview of Deployment and Rollback

  • Manifest for a POD with one container using the deployment object.

  • Lab: Launch an application with two PODs using the deployment object.

  • Lab: Using the deployment object, upgrade an application from version 1 to version 2.

  • Lab: Roll back the application to the previous version.

  • Lab: Roll back the application to any specific version.

Section 9: Kubernetes Networking

  • Overview of Kubernetes Networking

  • Container communication via localhost

  • Practice Lab - container-to-container communication on specific port within a pod

  • Pod-to-pod communication

  • Practice Lab - Pod-to-pod communication

  • Object - Service

  • Why service is required?

  • Service type

  • Cluster IP

  • NodePort

  • LoadBalancer

  • Headless

  • Practice Lab - Access the appl/service using cluster IP within the cluster using the service object

  • Practice Lab - Access the appl/service using NodePort outside the cluster using the service object

Section 10: Volumes in Kubernetes Cluster

  • Overview of Volumes in Kubernetes Cluster.

  • Volume types

  • EmptyDir

  • hostpath

  • Practice Lab: Create a POD with attached volume using volumes.

  • Practice Lab - Attach a shareable volume for containers within a POD.

  • Practice Lab - Attach a shareable volume for containers within a POD as well as with the host or worker node.

  • Practice Lab - EmptyDir

  • Practice Lab - hostpath

Section 11: Persistent Volumes

  • Overview of Persistent volumes

  • PersistentVolumeClaim - PVC

  • Configure a Volume using AWS ElasticBlockStore

  • Configure a Pod to Use a PersistentVolume for Storage

  • Practice Lab - Create a PersistentVolume

  • Practice Lab - Create a PersistentVolumeClaim

  • Practice Lab - Create a Pod to Use a PersistentVolume for Storage

Section 12: Namespaces in Kubernetes

  • Overview of Namespaces

  • Lab - Create new namespaces

  • Lab - Create Pod and Service in Namespaces

  • Lab - Switch between Kubernetes namespaces

  • Lab - Create pods in the namespace.

  • Lab - delete a Kubernetes namespace

Section 13: Resource Management for Pods and Containers

  • Overview of resource management for pods, containers

  • Lab resource-based quota

  • Lab - Apply pod quotas to namespaces

  • Requests and Limits

  • Lab - Set requests and limits in each container running in a pod.

  • Lab - Apply quotas to namespaces

  • Lab - Create pods with resources in namespaces

Section 14: Kubernetes HPA - Horizontal Pod Autoscaler

  • Kubernetes autoscaling basics

  • Lab: Configuring Minikube Cluster

  • Lab: Installation of Metric Server

  • Lab: Creating pods using deployment objects

  • Lab: Configure HPA - Horizontal Pod Autoscaler

  • Lab: A new pod is created automatically if the CPU load reaches a threshold value

  • Lab: A new pod is automatically terminated if the CPU load falls below the threshold value

Section 15: Kubernetes Jobs, Init container

  • Overview of Jobs and cron job pattern

  • Lab: Create a Pod Using Job Object

  • Lab: Run Multiple Pods in Parallel Using Job Object

  • Lab: Create jobs on a repeating schedule using CronJob

  • About Init Container and their use cases

  • Lab: Init Container

Section 16: Introduction to docker containers

  • Introduction about containers

  • Installation of Docker

  • Create a first container

  • Fetch container image from docker hub

  • Run a container in the background, interactive with tty terminal

  • Delete exited dockers using a single command

  • Get complete details of a running container

  • Check logs & stats of a running container

  • Port forwarding

  • exec, rename & restart the running container

  • Attach a container

  • Kill/stop, pause/unpause a container

  • Create, start, the cp command

  • Export/Import Command in Docker

  • Create an image from a running container

  • Pull a specific version image from the Docker hub

  • Image history, inspect & remove the image

Section 17: Dockerfile

  • Overview of Dockerfile, layered architecture

  • Create centos 7 images using Dockerfile

  • Overview of LABEL, ENV & RUN Command

  • Overview of WORKDIR

  • Copy, and add commands with their differences

  • Create a user account with a password using dockerfile

  • CMD Command

  • SSH to a container

  • Overview of EXPOSE Command

  • ENTRYPOINT in Dockerfile

Section 18: Manage Data in Docker

  • Overview of managing data in Docker

  • Volumes

  • Create & attach a volume to a container

  • Delete volumes from the Docker host machine

  • Bind mounts

Section 19: Networking in Docker

  • Bridge networking

  • Run containers in custom-created bridge networking

  • Enable communication between dockers belonging to different bridge network

  • DNS enabled with custom bridge networking

  • Host networking

  • None networking

  • Connect one or more networks to a running container

  • Create a private docker registry

  • How to allow images in the private registry for non-secure network

Section 20: Docker Compose

  • Overview of docker-compose

  • Docker compose Installation

  • Create my first docker-compose file

  • Create the docker-compose file in JSON language

  • Learn basic commands

  • docker-compose up

  • docker-compose down

  • docker-compose create

  • docker-compose start

  • docker-compose stop

  • docker-compose rm

  • docker-compose images

  • docker-compose ps

  • docker-compose pause

  • docker-compose unpause

  • docker-compose kill

  • docker-compose port port

  • docker-compose logs

  • docker-compose exec

  • docker-compose run

  • docker-compose scale

  • docker-compose top

  • Attach a volume & port mapping using docker-compose

  • Build a custom image using docker-compose

Section 21: Real-time project - Deploy an application to a Kubernetes cluster using Jenkins CI/CD pipeline, Ansible, Docker, Git, Webhook etc.


Khóa học liên quan

Khám phá thêm các khoá học cùng chủ đề

Hiển thị tất cả khoá học Cloud Computing
Hiển thị tất cả khoá học Devops
Hiển thị tất cả khoá học Docker
Hiển thị tất cả khoá học Kubernetes
Zalo
Tôi có thể tư vấn khoá học cho bạn 😊