What Will You Learn?
- Understand containers, Docker and Kubernetes architecture
- Run and manage Docker containers
- Build images using Dockerfiles
- Push images to Docker Hub
- Use Docker storage and networking
- Create Kubernetes Pods and Deployments
- Expose applications using Services
- Scale, update and roll back workloads
- Understand persistent storage, RBAC and Ingress
- Troubleshoot basic Docker and Kubernetes issues
Course Content
Module 1: Docker Architecture and Container Concepts
-
Containers vs virtual machines
-
Benefits and use cases of containers
-
Docker client-server architecture
-
Docker Engine and daemon
-
Images, containers and registries
-
Container lifecycle
-
Port mapping and environment variables
Module 2: Guided Lab — Install Docker and Run NGINX
-
Install Docker on Ubuntu/AWS EC2
-
Start and enable Docker
-
Configure non-root access
-
Verify the installation
-
Pull the NGINX image
-
Run NGINX with port mapping
-
List running and stopped containers
-
View logs
-
Execute commands inside the container
-
Inspect, stop and remove the container
-
Complete a short knowledge check
Module 3: Docker Images, Dockerfiles and Registries
-
Image repositories and tags
-
Docker image layers
-
Build context and caching
-
Dockerfile workflow
-
FROM, RUN, COPY and WORKDIR
-
ENV and EXPOSE
-
CMD vs ENTRYPOINT
-
.dockerignore
-
Dockerfile best practices
-
Docker Hub workflow
Module 4: Guided Lab — Build and Publish an Image
-
Prepare a simple web application
-
Write a Dockerfile
-
Build the custom image
-
Run and test the container
-
Inspect the image
-
Create a Docker Hub repository
-
Tag and push the image
-
Pull and validate the published image
Module 5: Docker Storage and Networking
-
Container writable layer
-
Persistent vs ephemeral data
-
Bind mounts
-
Named volumes
-
tmpfs overview
-
Bridge networking
-
User-defined networks
-
Host and none networks overview
-
Container DNS
-
Container-to-container communication
-
Basic troubleshooting workflow
Module 6: Docker Mini Project
-
Create the application image
-
Create a user-defined Docker network
-
Run the application and database containers
-
Configure container communication
-
Attach persistent database storage
-
Publish the application port
-
Verify data persistence
-
Troubleshoot an intentional connectivity error
-
Submit the Dockerfile and Docker Hub image link
Module 7: Kubernetes Architecture and Core Objects
-
Need for container orchestration
-
Kubernetes features
-
Control plane and worker nodes
-
API server, scheduler and etcd
-
Controller Manager
-
Kubelet and container runtime
-
Kubernetes objects
-
Manifest structure
-
Namespaces and Pods
-
Labels and annotations
-
Pod lifecycle
Module 8: Guided Lab — Set Up Kubernetes and Deploy a Pod
-
Install and configure kubectl
-
Create a Minikube or kind cluster
-
Inspect nodes and cluster information
-
Create a Namespace
-
Write a Pod manifest
-
Deploy and inspect the Pod
-
View logs
-
Execute commands inside the Pod
-
Troubleshoot image and configuration errors
Module 9: Deployments, Services and Application Lifecycle
-
Deployments and ReplicaSets
-
Desired state and self-healing
-
Labels and selectors
-
Scaling
-
Rolling updates
-
Rollbacks
-
Service discovery
-
ClusterIP
-
NodePort
-
LoadBalancer overview
-
DaemonSet and StatefulSet use cases
Module 10: Guided Lab — Deploy and Expose an Application
-
Deploy the Docker Hub application image
-
Create multiple replicas
-
Delete a Pod and observe self-healing
-
Expose the application with a Service
-
Inspect Service endpoints
-
Access the application
-
Perform a rolling image update
-
Review rollout history
-
Roll back to the previous version
-
Complete a short knowledge check
Module 11: Storage, Security, Ingress and Monitoring
-
PersistentVolumes
-
PersistentVolumeClaims
-
StorageClasses overview
-
ServiceAccounts
-
Roles and RoleBindings
-
Least-privilege RBAC
-
Services vs Ingress
-
NGINX Ingress Controller
-
Host- and path-based routing
-
TLS workflow overview
-
Kubernetes metrics and monitoring
-
Prometheus and Grafana overview
-
Application troubleshooting commands
Module 12: Final Kubernetes Project and Assessment
-
Create a dedicated Namespace
-
Deploy the application image
-
Configure replicas
-
Create a Service
-
Attach a PVC
-
Create a ServiceAccount
-
Apply a basic Role and RoleBinding
-
Configure an Ingress resource
-
Validate external application access
-
Perform an application update
-
Inspect Pods, logs and events
-
Demonstrate scaling or rollback
-
Complete the final assessment
Final Submission Requirements
-
Dockerfile
-
Docker Hub image link
-
Kubernetes Namespace manifest
-
Deployment manifest
-
Service manifest
-
PVC manifest
-
ServiceAccount and RBAC manifests
-
Ingress manifest
-
Screenshot of the running application
-
Evidence of scaling, update or rollback
-
Short deployment instructions
Student Ratings & Reviews
No Review Yet