DevOps Foundations
Learn DevOps - CI/CD, Docker, AWS, GitHub Actions & Cloud Deployment
12 Weeks
4 Hours
Course Incharge
Muzammil Bilwani

📋 Prerequisites
✓ Basic programming knowledge and comfort with web applications
📖 Course Description
Learn the core practices of DevOps including CI/CD, infrastructure as code, containerization, GitHub Actions, and cloud deployments. Designed to give hands-on DevOps experience using real-world tools, cloud platforms, and industry-standard pipelines.
What You Will Learn
Understand and apply CI/CD pipelines with GitHub Actions
Work with Git, GitHub, and automation workflows
Deploy applications using AWS services (S3, EC2, Elastic Beanstalk, Route 53)
Configure Cloudflare for DNS and CDN optimization
Monitor applications using Grafana
Use Docker for containerized application delivery
Implement industry-standard DevOps practices
Course Outline
Introduction to DevOps and Software Delivery
- →What is DevOps? Overview of practices and benefits
- →Dev vs Ops roles and workflows in modern organizations
- →DevOps culture and continuous improvement mindset
- →Key DevOps tools and technologies ecosystem
- →Introduction to cloud platforms and their role in DevOps
- →Toolchain overview and development environment setup
- →Hands-on: Course setup, DevOps ecosystem tour, and creating development accounts
Linux Essentials for DevOps
- →Introduction to Linux and why it matters in DevOps
- →Navigating Linux using terminal and web-based terminals
- →Essential Linux commands for file management
- →Understanding permissions, users, and groups
- →Basic shell scripting for automation
- →Package management and system updates
- →Hands-on: Write bash scripts for task automation and system monitoring
Version Control with Git and GitHub
- →Git fundamentals: init, add, commit, push, pull
- →Branching strategies and workflow best practices
- →GitHub repositories, forks, and pull requests
- →Collaborative development and code review process
- →Resolving merge conflicts
- →Git best practices for teams
- →Hands-on: Manage a team repository with branches, PRs, and collaborative workflows
Introduction to Cloud Computing and AWS
- →Cloud computing fundamentals: IaaS, PaaS, SaaS
- →Introduction to AWS and its core services
- →AWS account setup and IAM basics
- →Understanding AWS pricing and cost management
- →AWS regions, availability zones, and edge locations
- →Basic DNS concepts and domain registration
- →Hands-on: Set up AWS account, configure IAM users, and explore AWS console
Static and Dynamic Application Deployment
- →Understanding static vs dynamic applications
- →Deploying static sites to AWS S3 with static website hosting
- →Configuring S3 bucket policies and permissions
- →Deploying dynamic applications to AWS EC2 instances
- →Introduction to AWS Elastic Beanstalk for application deployment
- →Managing environment variables and application configuration
- →Hands-on: Deploy a static portfolio site to S3 and a Node.js/Python app to EC2 or Elastic Beanstalk
AWS Route 53 and Cloudflare Basics
- →Introduction to AWS Route 53 for DNS management
- →Creating and managing hosted zones in Route 53
- →Configuring DNS records (A, CNAME, MX)
- →Connecting custom domains to AWS services
- →Introduction to Cloudflare: DNS and CDN services
- →Configuring Cloudflare for performance and security
- →SSL/TLS certificates and HTTPS setup
- →Hands-on: Configure Route 53 for your application and set up Cloudflare for optimization
CI/CD Fundamentals
- →Introduction to CI/CD concepts and benefits
- →Understanding pipeline stages: build, test, deploy
- →CI/CD best practices and common patterns
- →Overview of popular CI/CD tools
- →Designing effective deployment strategies
- →Rollback strategies and blue-green deployments
- →Hands-on: Design and diagram a CI/CD pipeline for your application
GitHub Actions for CI/CD
- →Introduction to GitHub Actions and workflow automation
- →Creating and configuring workflow YAML files
- →Understanding jobs, steps, and actions
- →Setting up build, test, and deploy jobs
- →Managing secrets and environment variables in GitHub Actions
- →Automating deployments on push, pull request, or schedule
- →Integrating GitHub Actions with AWS services
- →Hands-on: Build a complete CI/CD pipeline using GitHub Actions for automated testing and deployment
Introduction to Docker and Containerization
- →Why containers? Benefits over traditional deployment
- →Docker architecture and core concepts
- →Installing Docker and understanding Docker CLI
- →Writing Dockerfiles: best practices and optimization
- →Building and running containers
- →Managing Docker images and containers
- →Docker networking basics
- →Hands-on: Containerize your application and run it locally
Advanced Docker and Container Orchestration
- →Docker Compose for multi-container applications
- →Defining services, networks, and volumes in docker-compose.yml
- →Container image registries: Docker Hub and AWS ECR
- →Pushing and pulling images from registries
- →Deploying containerized applications to AWS
- →Introduction to container orchestration concepts
- →Hands-on: Create a multi-container application with Docker Compose and deploy to AWS
Monitoring and Observability with Grafana
- →Importance of monitoring in DevOps
- →Metrics, logs, and traces: the three pillars of observability
- →Introduction to Grafana for visualization and monitoring
- →Setting up Grafana dashboards and panels
- →Connecting to various data sources
- →Creating alerts and notifications
- →Monitoring application performance and infrastructure health
- →Hands-on: Set up Grafana to visualize application metrics and create custom dashboards
Capstone: End-to-End DevOps Project
- →Final project requirements and planning
- →Building a complete web application with DevOps best practices:
- → - Source code management with Git/GitHub
- → - Containerization with Docker
- → - CI/CD pipeline with GitHub Actions
- → - Deployment to AWS (S3, EC2, or Elastic Beanstalk)
- → - Custom domain with Route 53 and Cloudflare
- → - Monitoring with Grafana
- →Project documentation and README creation
- →Live demonstration and presentation
- →Code review and best practices discussion
- →Reflective essay on DevOps journey and lessons learned
- →Next steps: Kubernetes, Terraform, and advanced DevOps practices
📊 Grading Criteria
| Component | Percentage |
|---|---|
| Quizzes | 20% |
| Class Participation / Attendance | 15% |
| Projects | 25% |
| Final Projects | 40% |
| Total | 100% |
Ready to Register in This Course?
Join thousands of students who have transformed their careers. Start your journey today!