Skip to content

NotHarshhaa/devops-environment-toolkit-beginners

Repository files navigation

πŸš€ DevOps Environment Toolkit for Beginners

DevOps Environment Toolkit Banner

One-click setup for your DevOps learning journey - Get all essential tools installed and configured on your local machine in minutes!

License: MIT Platform PRs Welcome

✨ What This Toolkit Does

This lightweight toolkit automatically installs and configures all the essential DevOps tools you need to start your learning journey on your local machine, without any complex setup or configuration headaches. Perfect for beginners who want to dive into DevOps without spending weeks on environment setup.

πŸ› οΈ Tools Included

Category Tools Purpose
Version Control Git Code versioning with helpful aliases
Containerization Docker, Docker Compose Container management and orchestration
Orchestration Kubernetes (kubectl + Minikube) Container orchestration and local development
Infrastructure Terraform Infrastructure as Code
Configuration Ansible Configuration management and automation
Development VS Code Enhanced development experience with DevOps extensions
Cloud CLI AWS CLI, Azure CLI Multi-cloud management

πŸš€ Quick Start

🌟 Enhanced Installation Options

Choose from multiple installation modes with advanced features:

Standard Installation (All Tools)

# Linux/macOS
./install.sh

# Windows PowerShell
.\install.ps1

Selective Installation (Choose Your Tools)

# Linux/macOS - Interactive menu to choose tools
./install.sh --selective

# Windows PowerShell - Interactive menu to choose tools
.\install.ps1 -Selective

Preview Installation (See What Would Be Installed)

# Linux/macOS - Dry run mode
./install.sh --dry-run

# Windows PowerShell - Dry run mode
.\install.ps1 -DryRun

Remote Installation

# Linux/macOS
curl -fsSL https://raw.githubusercontent.com/NotHarshhaa/devops-environment-toolkit-beginners/master/install.sh | bash

# Windows PowerShell
iwr -useb https://raw.githubusercontent.com/NotHarshhaa/devops-environment-toolkit-beginners/master/install.ps1 | iex

Manual Installation

git clone https://github.com/NotHarshhaa/devops-environment-toolkit-beginners.git
cd devops-environment-toolkit
chmod +x install.sh
./install.sh

🎯 Features

πŸš€ Core Features

  • πŸ”„ One-Click Local Installation: Automated setup for all major platforms on your local machine
  • ⚑ Lightning Fast: Optimized installation process - ready in minutes
  • 🎨 Pre-configured: Tools come with sensible defaults and configurations for beginners
  • πŸ”§ Customizable: Easy to modify and extend as you learn
  • πŸ“± Cross-Platform: Works on Linux, macOS, and Windows
  • πŸ›‘οΈ Safe: Non-destructive installation with rollback options
  • πŸ“š Beginner-Friendly: Clear documentation, examples, and learning resources
  • πŸŽ“ Learning-Focused: Designed specifically for DevOps beginners starting their journey

✨ Advanced Installation Features

  • 🎯 Selective Installation: Choose which tools to install with interactive menus
  • πŸ“Š Progress Tracking: Visual progress bars with percentage completion
  • πŸ“ Comprehensive Logging: Detailed logs saved to files for troubleshooting
  • πŸ”„ Error Recovery: Automatic backup and restore functionality
  • βœ… System Validation: Checks disk space, memory, and internet connectivity
  • πŸ₯ Health Checks: Verifies all tools are working correctly after installation
  • πŸ“‹ Installation Reports: Detailed reports with next steps and support links
  • πŸ” Dry Run Mode: Preview installation without making changes
  • πŸ“š Support Documentation: Direct links to official documentation for each tool

πŸ“ Project Structure

devops-environment-toolkit/
β”œβ”€β”€ install.sh              # Main installation script (Linux/macOS)
β”œβ”€β”€ install.ps1             # Windows installation script
β”œβ”€β”€ verify.sh               # Tool verification script (Linux/macOS)
β”œβ”€β”€ verify.ps1              # Tool verification script (Windows)
β”œβ”€β”€ configs/                # Configuration files
β”‚   β”œβ”€β”€ docker/             # Docker configurations
β”‚   └── vscode/             # VS Code settings
β”œβ”€β”€ templates/              # Project templates
β”‚   └── basic-web-app/      # Simple web application
β”œβ”€β”€ scripts/                # Utility scripts
└── examples/               # Example configurations

🎨 What You Get

1. Version Control Setup

  • Git with helpful aliases and configuration
  • Pre-configured Git settings for beginners

2. Containerization Environment

  • Docker Engine with optimized settings
  • Docker Compose for multi-container applications
  • Pre-configured Dockerfiles for common languages

3. Kubernetes Development

  • kubectl for Kubernetes management
  • Minikube for local Kubernetes development
  • Pre-configured Kubernetes manifests

4. Infrastructure as Code

  • Terraform for learning Infrastructure as Code
  • Sample Terraform configurations
  • AWS and Azure provider examples

5. Configuration Management

  • Ansible for automation and configuration
  • Sample playbooks and inventory files
  • Best practices for beginners

6. Development Environment

  • VS Code with essential DevOps extensions
  • Pre-configured workspace settings
  • Integrated terminal enhancements

7. Cloud Management

  • AWS CLI for Amazon Web Services
  • Azure CLI for Microsoft Azure
  • Pre-configured cloud profiles

8. Learning Resources

  • Sample web application
  • Docker Compose setup
  • VS Code workspace
  • Comprehensive documentation

πŸ”§ Customization

The toolkit is designed to be easily customizable. You can:

  • Modify configs/ directory to change tool configurations
  • Add new tools by editing the installation scripts
  • Create custom project templates in templates/
  • Extend the verification script to check additional tools

πŸŽ“ Beginner Learning Path

After installation, follow this structured learning path designed specifically for DevOps beginners with our focused toolset:

  1. Week 1: Version Control & Containerization Fundamentals

    • Master Git workflows for beginners
    • Learn Docker basics and containerization
    • Create your first Dockerfile and Docker Compose setup
  2. Week 2: Infrastructure as Code Introduction

    • Learn Terraform basics and best practices
    • Deploy infrastructure to AWS and Azure
    • Practice with configuration management using Ansible
  3. Week 3: Kubernetes Fundamentals

    • Learn kubectl commands and Kubernetes concepts
    • Set up Minikube for local development
    • Deploy applications to Kubernetes clusters
  4. Week 4: Cloud Platforms Introduction

    • Explore AWS services with AWS CLI
    • Try Azure resources with Azure CLI
    • Learn cloud resource management and best practices
  5. Week 5: Advanced DevOps Practices

    • Integrate all tools in a complete workflow
    • Build end-to-end DevOps solutions
    • Practice with infrastructure automation
  6. Week 6: Real-World Projects

    • Build a complete microservices application
    • Deploy to cloud using Terraform
    • Configure with Ansible and orchestrate with Kubernetes

Perfect for beginners: Each week builds upon the previous, taking you from complete beginner to confident DevOps practitioner with our focused, essential toolset.

πŸ“š Support Documentation

After installation, you'll have access to comprehensive support documentation for each tool:

These links are automatically displayed after successful installation, making it easy to get started with each tool.

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

Quick Contribution Ideas

  • Add support for new tools
  • Improve installation scripts
  • Create new project templates
  • Add more configuration examples
  • Improve documentation

πŸ“ž Support

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Inspired by the DevOps community
  • Built with ❀️ for beginners
  • Special thanks to all contributors

Ready to start your DevOps learning journey? πŸš€

Install Now

Perfect for beginners - Star ⭐ this repo if you found it helpful!

About

This repo provides a ready-to-use local setup with all the essential tools you need before starting your DevOps learning journey.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published