Welcome to the DevOps Learning Repository! This repository contains a curated list of exercises to help you learn and master various DevOps tools and technologies, including Linux, Bash, Docker, Kubernetes (k8s), Helm, Terraform, Ansible, and Prometheus.
This repository aims to provide hands-on exercises for learning various DevOps tools and practices. Each section contains practical exercises designed to enhance your understanding and proficiency in using these tools.
To get started, clone this repository to your local machine:
git clone https://github.com/srinathln7/dev-ops.git
cd dev-ops
Learn the basics of Linux, including file system navigation, permissions, process management, and more.
- Exercise 1: Introduction to Linux Commands
- Exercise 2: File System Navigation
- Exercise 3: Managing Files and Directories
- Exercise 4: Permissions and Ownership
- Exercise 5: Process Management
Master the Bash shell and scripting to automate tasks and streamline workflows.
- Exercise 1: Introduction to Bash
- Exercise 2: Variables and Environment
- Exercise 3: Control Structures
- Exercise 4: Functions
- Exercise 5: Scripting Projects
Understand containerization with Docker, including creating, managing, and deploying containers.
- Exercise 1: Introduction to Docker
- Exercise 2: Building Docker Images
- Exercise 3: Managing Docker Containers
- Exercise 4: Docker Compose
- Exercise 5: Docker Networking and Volumes
Learn to orchestrate containerized applications using Kubernetes.
- Exercise 1: Introduction to Kubernetes
- Exercise 2: Deploying Applications
- Exercise 3: Services and Networking
- Exercise 4: Persistent Storage
- Exercise 5: Helm Charts
Explore Helm, the package manager for Kubernetes, to manage complex applications.
- Exercise 1: Introduction to Helm
- Exercise 2: Creating Helm Charts
- Exercise 3: Managing Releases
- Exercise 4: Helm Repositories
- Exercise 5: Advanced Helm Usage
Automate infrastructure provisioning using Terraform.
- Exercise 1: Introduction to Terraform
- Exercise 2: Writing Terraform Configurations
- Exercise 3: Managing Infrastructure State
- Exercise 4: Modules and Workspaces
- Exercise 5: Best Practices
Automate configuration management and application deployment with Ansible.
- Exercise 1: Introduction to Ansible
- Exercise 2: Writing Playbooks
- Exercise 3: Ansible Roles
- Exercise 4: Managing Inventories
- Exercise 5: Advanced Ansible Usage
Monitor systems and applications using Prometheus.
- Exercise 1: Introduction to Prometheus
- Exercise 2: Setting Up Prometheus
- Exercise 3: Monitoring Applications
- Exercise 4: Prometheus Alerting
- Exercise 5: Grafana Dashboards
We welcome contributions! If you have suggestions for new exercises or improvements to existing ones, please submit an issue or a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
Note: This repository is currently a work in progress. More exercises and improvements will be added regularly. Stay tuned!
Happy learning! 🚀