1. Introduction to Linux Operating System
    History and evolution of Linux, Linux distributions, Linux architecture, kernel vs shell, terminal vs GUI
  2. Working with the Linux Shell
    Types of shells, bash introduction, terminal commands, command structure, command options and arguments
  3. Basic Linux Commands
    Navigation (pwd, cd, ls), file operations (cp, mv, rm, touch, cat, more, less), command chaining, piping, redirection (>, >>, <, |)
  4. Help Commands and Documentation
    Using man, info, help, whatis, and –help
  5. Understanding the Linux Filesystem Hierarchy
    Root directory /, /bin, /etc, /home, /var, /usr, relative vs absolute path
  6. File and Directory Management
    Creating, moving, renaming, deleting, viewing files, using wildcards
  7. Using the Vi/Vim Editor
    Vi modes (command, insert, visual), navigation commands, editing text, saving and quitting, search & replace
  8. File Permissions and Ownership
    File permission structure (rwx), changing permissions using chmod, ownership using chown, understanding umask
  9. User Management
    Creating, modifying, and deleting users (useradd, usermod, userdel), understanding /etc/passwd, /etc/shadow
  10. Group Management
    Creating and assigning groups, /etc/group, groupadd, groupmod, groupdel, adding users to groups
  11. Switching and Managing Users
    su, sudo, whoami, id, passwd, switching sessions and user privileges
  12. Process Management
    Understanding PID, ps, top, htop, foreground/background jobs, kill, nice, renice
  13. Introduction to Shell Scripting
    What is a shell script, writing your first script, adding executable permissions, shebang (#!)
  14. Variables and Operators
    Defining variables, scope, environment variables, string and numeric operations
  15. Conditional Statements
    if, else, elif, test expressions, comparison and logical operators
  16. Loops and Iterations
    for, while, until, break, continue, use cases in automation
  17. Basic Functions and Exit Status
    Writing functions, function parameters, capturing exit status with $?
  18. Storage Management in Linux
    Mounting and unmounting drives, working with df, du, mount, umount, partitions and fstab, disk usage monitoring
  19. Basic Networking Commands
    IP address configuration, ifconfig, ip, ping, netstat, ss, traceroute, hostname, nmcli, network troubleshooting
  20. Advanced Shell Scripting Practices
    Script input/output with read, echo, redirection in scripts, cron jobs, logging
  21. Real-World Script Examples
    Automated backup, system monitoring alert, disk space check script, user creation script
  1. Introduction to Docker & Containers
    Containers vs virtual machines, benefits of containerization, Docker architecture (client, daemon, image, container), Docker ecosystem overview
  2. Installing Docker & First Run
    Installing Docker on Linux, Windows, macOS, using Docker Desktop, verifying installation, running your first container (hello-world, docker run, docker ps, docker stop)
  3. Working with Docker Images & Containers
    Pulling images from Docker Hub, inspecting and removing images, creating containers, interactive vs detached mode, restarting and stopping containers
  4. Dockerfile & Custom Image Builds
    Dockerfile structure and instructions (FROM, RUN, COPY, CMD), building images with docker build, tagging, .dockerignore, optimizing layers
  5. Volumes & Data Persistence
    Working with volumes and bind mounts, creating named volumes, mounting directories between host and container, docker volume commands
  6. Networking in Docker
    Bridge and host networks, exposing ports using -p, basic container-to-container communication, inspecting network settings
  7. Docker Compose Basics
    Why use Compose, understanding docker-compose.yml, defining multi-container services, running applications with docker-compose up
  8. Introduction to Git & Setup
    What is Git, benefits of version control, Git vs GitHub, installing Git, global configurations (git config), understanding working directory, staging area, and repository
  9. Basic Git Operations
    Initializing a repo (git init), cloning (git clone), staging and committing (git add, git commit), checking status (git status), viewing history (git log, git show)
  10. Branching & Collaboration
    Creating and switching branches, merging branches and resolving conflicts, .gitignore usage, adding remotes, pushing and pulling from remotes (git push, git pull), basic GitHub workflow
  11. Undo & Reset Operations
    Using git stash, resetting changes (git reset, git restore), reverting commits, viewing previous states using reflog
  12. Best Practices & Git Tips
    Writing meaningful commit messages, tagging versions, working with forks and pull requests, Git workflow styles (feature branches, Git Flow basics)
  1. Introduction to Jenkins & CI/CD Concepts
    Understanding Continuous Integration and Continuous Delivery, evolution of Jenkins, core Jenkins architecture (controller and agents), benefits of automation in software development, Jenkins use cases
  2. Installing and Setting Up Jenkins
    System requirements, installing Jenkins on Windows/Linux/macOS, setting up Jenkins as a service, accessing Jenkins dashboard, initial admin setup and plugin installation
  3. Understanding Jenkins UI and Job Configuration
    Navigating the Jenkins dashboard, creating and managing freestyle jobs, understanding build triggers, parameters, workspace, and build environment, adding build steps
  4. Working with Jenkins Plugins
    Role and importance of plugins, managing plugins via Plugin Manager, essential plugins (Git, Pipeline, Email, Blue Ocean), troubleshooting plugin issues
  5. Integrating Jenkins with Git
    Connecting Jenkins with GitHub/GitLab/Bitbucket, configuring Git credentials and webhooks, polling SCM vs webhook triggers, building on code changes
  6. Build Automation and Execution
    Running shell commands in build steps, archiving artifacts, build notifications, running unit tests, post-build actions, console output analysis
  7. Introduction to Jenkins Pipelines
    What is a pipeline, differences between freestyle and pipeline jobs, installing Pipeline plugin, basic pipeline syntax using Declarative Pipeline
  8. Writing Jenkins Declarative Pipelines
    Structure of a Jenkinsfile, defining stages, steps, agent, and post actions, pipeline-as-code concept, version-controlling Jenkinsfiles with Git
  9. Parallel & Conditional Execution
    Using parallel stages in pipelines, adding conditions with when, handling errors and retries, use of input for manual approvals
  10. Credentials & Secrets Management
    Adding credentials securely in Jenkins, using credentials in pipelines, storing secrets, environment variables, Jenkins Credential Binding plugin
  11. Basic Security and User Management
    Creating users, configuring roles and permissions, securing Jenkins with authentication and authorization, setting up Matrix-based security
  12. Jenkins Best Practices
    Organizing folders and jobs, naming conventions, clean workspace policy, backup and restore strategies, monitoring Jenkins performance
  1. Introduction to Kubernetes & Container Orchestration
    What is Kubernetes, evolution from Docker to K8s, Kubernetes architecture overview (master & worker nodes), core components (API Server, etcd, Controller Manager, Scheduler, kubelet, kube-proxy), advantages of Kubernetes for DevOps
  2. Setting Up Kubernetes Cluster
    Installing Kubernetes via kubeadm, system requirements and prerequisites, initializing the master node, joining worker nodes, configuring kubectl, understanding kubeconfig, verifying node status and cluster health
  3. Kubernetes Objects & Workloads
    Understanding Pods, ReplicaSets, Deployments, StatefulSets, DaemonSets, creating and managing resources using YAML and kubectl, rolling updates and rollbacks, scaling deployments manually and automatically
  4. Services & Networking in Kubernetes
    ClusterIP, NodePort, LoadBalancer services, headless services, service discovery with DNS, kube-proxy internals, ingress controllers and ingress resources, exposing applications securely, network policies basics
  5. Storage in Kubernetes
    Volumes vs persistent volumes (PVs), Persistent Volume Claims (PVCs), storage classes, dynamic provisioning, configuring hostPath, emptyDir, NFS, and cloud storage backends, mounting volumes to pods
  6. ConfigMaps & Secrets Management
    Using ConfigMaps to externalize configuration, managing sensitive data with Secrets, mounting configs and secrets as files or environment variables, updating resources without redeploying pods
  7. RBAC and Access Control
    Role-Based Access Control concepts, Roles vs ClusterRoles, RoleBindings and ClusterRoleBindings, securing access using service accounts, managing permissions for users and workloads
  8. Monitoring & Logging in Kubernetes
    Using kubectl top, resource metrics, liveness and readiness probes, logging with kubectl logs, centralized logging concepts, introduction to Prometheus, Grafana, and EFK/ELK stack
  9. Helm Package Management
    Introduction to Helm, Helm charts and repositories, installing and configuring Helm, deploying applications with Helm, customizing values, upgrading and rolling back Helm releases
  10. Scheduling & Resource Management
    Understanding the scheduler, node selectors, taints and tolerations, affinity and anti-affinity rules, resource limits and requests, managing workloads with QoS classes
  11. Kubernetes Troubleshooting Essentials
    Debugging pods and nodes, common error scenarios, checking logs and events, using kubectl describe, checking cluster components’ health, restarting and draining nodes, viewing events
  12. Backup, Restore & Cluster Maintenance
    Backing up etcd, restoring from snapshots, upgrading Kubernetes clusters with kubeadm, draining and cordoning nodes, managing cluster certificates, cleanup strategies, understanding long-term operations