The Week-by-Week Syllabus
This structured syllabus will guide you through the essential concepts and tools of DevOps.
Week 1: Introduction to DevOps
What to learn: Concepts of DevOps, Agile methodologies, version control with Git.
Why this comes before the next step: Understanding the principles of DevOps and Agile lays the groundwork for adopting practices that enhance team collaboration and efficiency.
Mini-project/Exercise: Create a GitHub repository and practice basic Git commands (clone, commit, push, pull).
Week 2: Continuous Integration Basics
What to learn: Continuous Integration (CI), introduction to GitHub Actions.
Why this comes before the next step: CI is a foundational practice in DevOps, ensuring code changes are automatically tested and integrated into the main branch.
Mini-project/Exercise: Set up a simple CI pipeline that runs tests on every push to the repository.
Week 3: Containerization with Docker
What to learn: Basics of containerization, working with Docker.
Why this comes before the next step: Containerization helps in packaging applications and their dependencies, making them portable across environments.
Mini-project/Exercise: Create a Docker image for a simple web application and deploy it locally.
Week 4: Introduction to Cloud Deployments
What to learn: Cloud infrastructure basics, deploying applications on AWS.
Why this comes before the next step: Learning to deploy applications on the cloud is crucial for scalable infrastructures and practical application of DevOps practices.
Mini-project/Exercise: Deploy the Dockerized application to an AWS EC2 instance.
Week 5: Infrastructure as Code with Terraform
What to learn: Introduction to Infrastructure as Code, using Terraform.
Why this comes before the next step: IaC allows teams to manage and provision infrastructure through code, ensuring consistency in deployments.
Mini-project/Exercise: Write a Terraform configuration to provision an EC2 instance and deploy your application.
Week 6: Monitoring and Logging
What to learn: Monitoring applications using Prometheus and basic logging practices.
Why this comes before the next step: Monitoring and logging are essential to maintain application health and quickly resolve issues that arise in production.
Mini-project/Exercise: Set up Prometheus to monitor the metrics of your deployed application.