From zero to production-ready DevOps engineer. No fluff, no shortcuts — just real skills.
This is not another collection of DevOps bookmarks or a surface-level overview. This is a structured, opinionated, hands-on learning system designed to take you from absolute beginner to a job-ready DevOps Engineer.
Every module follows a progression: understand → practice → debug → build. You will not just learn tools — you will learn how to think like a DevOps engineer.
| Audience | Starting Point | What You'll Gain |
|---|---|---|
| Absolute Beginners | No DevOps experience, maybe some coding | Complete DevOps foundation + practical skills |
| Developers Transitioning | Can code, but unfamiliar with infra/ops | Production-grade operational skills |
- ✅ Set up and manage Linux servers in production
- ✅ Containerize any application with Docker
- ✅ Build CI/CD pipelines from scratch (GitHub Actions, Jenkins)
- ✅ Monitor and debug production systems (Prometheus, Grafana, ELK)
- ✅ Provision infrastructure as code (Terraform)
- ✅ Deploy and manage Kubernetes clusters
- ✅ Implement security best practices across the stack
- ✅ Debug production incidents methodically
- ✅ Design scalable, reliable deployment architectures
- ✅ Pass DevOps engineer interviews with confidence
This roadmap is strictly ordered. Do NOT skip ahead. Each module builds on the previous one.
flowchart LR
subgraph P1["PHASE 1 · Fundamentals"]
direction TB
M00["00 Foundations"] --> M01["01 Linux"] --> M02["02 Networking"] --> M03["03 Git"] --> M04["04 Scripting"]
end
subgraph P2["PHASE 2 · Core Tools"]
direction TB
M05["05 Docker"] --> M06["06 CI/CD"] --> M07["07 Observability"] --> M08["08 Logging"]
end
subgraph P3["PHASE 3 · Production Skills"]
direction TB
M09["09 Cloud"] --> M10["10 Terraform"] --> M11["11 Ansible"] --> M12["12 Kubernetes"]
end
subgraph P4["PHASE 4 · Mastery"]
direction TB
M13["13 Security"] --> M14["14 System Design"] --> M15["15 Projects"] --> M16["16 Interview Prep"]
end
P1 ==> P2 ==> P3 ==> P4
style P1 fill:#e8f0ff,stroke:#3366cc
style P2 fill:#e8ffe8,stroke:#22aa22
style P3 fill:#fff4e0,stroke:#cc8800
style P4 fill:#f5e8ff,stroke:#8844cc
NOTE: Observability & Logging are taught before Kubernetes, Terraform, and Ansible. You must understand how systems behave and how to debug failures before you automate or scale them.
Every module has a README.md (concepts), labs/ (hands-on), projects/ (portfolio work), and resources.md (curated links). Modules 01–13 also ship a cheatsheet.md — the command reference you'll keep coming back to long after you've read the theory — and most ship a code/ directory holding the real, runnable files from each lab: Dockerfiles, Compose stacks, Terraform configs, Ansible roles, Kubernetes manifests, Prometheus rules, and workflows.
Everything under code/ is automatically tested whenever it changes, so the files you copy into a lab actually run. That tooling is not part of the curriculum — you never need to look at it. It exists so the handbook doesn't quietly rot as tool versions move on.
| # | Module | Focus | Est. Time | Cheat Sheet | Lab Code |
|---|---|---|---|---|---|
| Phase 1: Fundamentals | |||||
| 00 | Foundations | DevOps culture, SDLC, Agile, tooling overview | 1 week | — | — |
| 01 | Linux | Debian/Ubuntu and RHEL-family Linux, filesystem, processes, permissions, systemd | 2 weeks | 📋 | 📁 |
| 02 | Networking | TCP/IP, DNS, HTTP, firewalls, troubleshooting | 1.5 weeks | 📋 | 📁 |
| 03 | Git | Version control, branching, PRs, Git workflows | 1 week | 📋 | — |
| 04 | Scripting | Bash scripting, Python basics for automation | 2 weeks | 📋 | 📁 |
| Phase 2: Core Tools | |||||
| 05 | Containers & Docker | Images, containers, Compose, registries | 2 weeks | 📋 | 📁 |
| 06 | CI/CD | GitHub Actions, Jenkins, GitLab CI, pipelines, testing | 2 weeks | 📋 | 📁 |
| 07 | Observability | Prometheus, Grafana, metrics, alerting, tracing | 2 weeks | 📋 | 📁 |
| 08 | Logging | ELK stack, Loki, centralized logging, debugging | 1.5 weeks | 📋 | 📁 |
| Phase 3: Production Skills | |||||
| 09 | Cloud Fundamentals | Cloud-agnostic concepts, then AWS specifics, FinOps | 2 weeks | 📋 | 📁 |
| 10 | Terraform | Infrastructure as Code, state, modules, Packer | 2 weeks | 📋 | 📁 |
| 11 | Ansible | Configuration management, playbooks, roles | 1 week | 📋 | 📁 |
| 12 | Kubernetes | Pods, Services, Deployments, Helm, GitOps, service mesh | 3 weeks | 📋 | 📁 |
| Phase 4: Mastery | |||||
| 13 | Security Basics | Secrets, RBAC, container security, secure CI/CD | 1.5 weeks | 📋 | 📁 |
| 14 | System Design | Architecture, scaling, HA, queues, platform engineering | 1 week | — | 📁 |
| 15 | Projects | Beginner → Advanced real-world projects | 3-4 weeks | — | — |
| 16 | Interview Prep | FAQs, scenarios, incident response, certs, job search | 1-2 weeks | — | 📁 |
Total Estimated Duration: 24-28 weeks (6-7 months) at ~10-15 hours/week
⚡ In a hurry? QUICK-REFERENCE.md is the one page to keep open in a tab: the ~50 commands you type daily, 60-second triage runbooks for servers and clusters, and the lookup tables (exit codes, HTTP codes, ports, file modes, CIDR) you'll otherwise search for every week.
We use a specific, industry-relevant stack throughout this handbook. No tool-agnostic hand-waving.
| Category | Tool(s) | Why |
|---|---|---|
| Operating System | Debian/Ubuntu + RHEL-compatible Linux | Both families are common in production: Ubuntu/Debian in cloud-native and developer-heavy environments; RHEL, Rocky, AlmaLinux, CentOS Stream, and Amazon Linux in enterprise/cloud estates |
| Version Control | Git + GitHub | Universal adoption, GitHub Actions integration |
| Scripting | Bash + Python | Bash for system tasks, Python for complex automation |
| Containers | Docker + Docker Compose | Industry standard containerization |
| CI/CD | GitHub Actions (primary), Jenkins (secondary) | Modern + legacy exposure |
| Monitoring | Prometheus + Grafana | De facto open-source observability stack |
| Logging | ELK Stack (Elasticsearch, Logstash, Kibana) + Loki | Enterprise + lightweight options |
| Cloud | Cloud-agnostic concepts → AWS | Largest market share, transferable skills |
| IaC | Terraform | Multi-cloud, declarative, huge adoption |
| Config Management | Ansible | Agentless, simple, widely used |
| Orchestration | Kubernetes | Industry standard container orchestration |
| Reverse Proxy | Nginx | Performance, widespread use, versatile |
| Security | Integrated across all modules | Security is not a bolt-on |
For a hands-on workflow, read the Practical Learning Guide. For day-to-day command lookup, use the Quick Reference. For any term a module uses without stopping to explain it, see the Glossary.
Every module ends with a ✅ Self-Check — collapsed questions to answer from memory before you start its labs. If more than two are shaky, the reading isn't done yet.
Follow the modules in order, 00 → 16. Each module's README explains concepts, then the labs/ directory provides hands-on practice.
# Clone the repository
git clone https://github.com/crypticani/the-devops-handbook.git
cd the-devops-handbook
# Start with Module 00
cd 00-foundations
# Read README.md first, then work through labs/If you already have Linux/Git experience, you can start from Module 04 or 05, but verify your knowledge first by completing the labs in earlier modules.
- Read
README.md— understand the concepts and why they matter - Study the commands and tools — don't just memorize, understand
- Do every lab in
labs/— hands-on is non-negotiable. Type the files out the first time;code/holds reference copies for when you're stuck or comparing - Break things — every lab ends with a 🧨 Break It section. These are not optional. Real skill is knowing what a system looks like when it's wrong
- Build mini-projects in
projects/— apply what you learned - Keep
cheatsheet.mdopen while you work — recall comes from repetition, not memorisation - Check
resources.md— deepen your knowledge - Review interview insights — prep continuously, not at the end
Use this checklist to track your progress. Copy it to a separate file or use GitHub's checkbox feature.
- 00 - Foundations: DevOps concepts, culture, SDLC
- Read README.md
- Complete all labs
- Review resources
- 01 - Linux: Filesystem, processes, permissions, services
- Read README.md
- Complete all labs
- Complete mini-projects
- Review resources
- 02 - Networking: TCP/IP, DNS, HTTP, firewalls
- Read README.md
- Complete all labs
- Review resources
- 03 - Git: Branching, PRs, workflows, conflicts
- Read README.md
- Complete all labs
- Review resources
- 04 - Scripting: Bash + Python automation
- Read README.md
- Complete all labs
- Complete scripting projects
- Review resources
- 05 - Docker: Images, containers, Compose, registries
- Read README.md
- Complete all labs
- Complete Docker projects
- Review resources
- 06 - CI/CD: GitHub Actions, Jenkins, pipelines
- Read README.md
- Complete all labs
- Build a full pipeline
- Review resources
- 07 - Observability: Prometheus, Grafana, alerting
- Read README.md
- Complete all labs
- Build dashboards
- Review resources
- 08 - Logging: ELK, Loki, log analysis
- Read README.md
- Complete all labs
- Debug using logs
- Review resources
- 09 - Cloud Fundamentals: Cloud concepts, AWS basics
- Read README.md
- Complete all labs
- Review resources
- 10 - Terraform: IaC, state management, modules
- Read README.md
- Complete all labs
- Provision real infrastructure
- Review resources
- 11 - Ansible: Playbooks, roles, configuration
- Read README.md
- Complete all labs
- Review resources
- 12 - Kubernetes: Pods, Services, Deployments, debugging
- Read README.md
- Complete all labs
- Deploy multi-service app
- Review resources
- 13 - Security: Secrets, RBAC, secure pipelines
- Read README.md
- Complete all labs
- Security audit exercise
- Review resources
- 14 - System Design: Architecture, scaling, HA
- Read README.md
- Design exercises
- Review resources
- 15 - Projects: Build all projects
- Beginner projects
- Intermediate projects
- Advanced projects
- 16 - Interview Prep: Practice all scenarios
- Technical FAQs
- Scenario-based questions
- Mock debugging sessions
| Week | Module | Focus |
|---|---|---|
| 1 | 00 - Foundations | DevOps culture, SDLC, tool overview |
| 2-3 | 01 - Linux | Commands, filesystem, processes, services |
| 4-5 | 02 - Networking | TCP/IP, DNS, HTTP, troubleshooting |
| 6 | 03 - Git | Version control, branching, workflows |
| 7-8 | 04 - Scripting | Bash + Python for DevOps |
| 9-10 | 05 - Docker | Containers, images, Compose |
| 11-12 | 06 - CI/CD | GitHub Actions, Jenkins, pipelines |
| 13-14 | 07 - Observability | Prometheus, Grafana, alerting, distributed tracing |
| 15-16 | 08 - Logging | ELK, Loki, log debugging |
| 17-18 | 09 - Cloud | Cloud concepts, AWS fundamentals |
| 19-20 | 10 - Terraform | Infrastructure as Code |
| 21 | 11 - Ansible | Configuration management |
| 22-24 | 12 - Kubernetes | Container orchestration |
| 25 | 13 - Security | Security practices |
| 26 | 14 - System Design | Architecture for DevOps |
| 27-30 | 15 - Projects | Build portfolio projects |
| 31-32 | 16 - Interview Prep | Get job-ready |
You need very little to start:
- ✅ A computer (any OS — we'll set up Linux via VM/WSL/cloud)
- ✅ Basic comfort with using a terminal
- ✅ Curiosity and willingness to break things
- ✅ ~10-15 hours per week to dedicate
Not required: Prior DevOps experience, cloud accounts (free tiers are sufficient), expensive hardware.
Throughout this handbook, we reinforce four core principles:
- Automation Mindset — If you do it twice, automate it
- Infrastructure as Code — Everything declared, version-controlled, reproducible
- Observability First — You can't fix what you can't see
- Security as Culture — Baked in, not bolted on
These aren't just buzzwords — they're practiced in every lab and project.
Security is not isolated to Module 13. It is embedded throughout:
- Linux: File permissions, SSH hardening, sudo practices
- Git:
.gitignore, secrets prevention, signed commits - Docker: Image scanning, non-root containers, minimal base images
- CI/CD: Secret management, SAST/DAST integration
- Cloud: IAM, least privilege, network security groups
- Kubernetes: RBAC, network policies, pod security
Module 13 serves as consolidation, not introduction.
See CONTRIBUTING.md for guidelines on how to contribute to this handbook.
We welcome:
- Bug fixes and corrections
- Additional labs and exercises
- New resources and references
- Translations
- Real-world scenario contributions
This project is licensed under the MIT License — see the LICENSE file for details.
Built with 💻 by crypticani
"The best time to start learning DevOps was yesterday. The second best time is now."
⭐ If this helped you, consider starring the repo!