Skip to content

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

License

Notifications You must be signed in to change notification settings

NotHarshhaa/devops-environment-toolkit-beginners

Repository files navigation

πŸš€ DevOps Environment Toolkit for Beginners

DevOps Environment Toolkit Banner

Enterprise-grade DevOps environment setup with advanced security and reliability features - Get all essential tools installed, configured, and verified on your local machine with comprehensive error handling, rollback capabilities, and automated health checks!

License: MIT Platform Version PRs Welcome

✨ What This Toolkit Does

This enterprise-grade toolkit automatically installs, configures, and verifies all the essential DevOps tools you need to start your learning journey on your local machine. Version 2.0.0 introduces advanced security features, comprehensive error handling, rollback capabilities, and automated health checks - making it the most reliable and secure DevOps environment setup available for beginners.

πŸ› οΈ Tools Included

Category Tools Purpose Features
Version Control Git Code versioning with helpful aliases Auto-update checking, secure configuration
Containerization Docker, Docker Compose Container management and orchestration Health monitoring, security scans
Orchestration Kubernetes (kubectl + Minikube) Container orchestration and local development Version checking, diagnostics
Infrastructure Terraform Infrastructure as Code Update notifications, validation
Configuration Ansible Configuration management and automation Security configuration checks
Development VS Code Enhanced development experience with DevOps extensions Extension verification
Cloud CLI AWS CLI, Azure CLI Multi-cloud management Credential security checks

πŸš€ Quick Start

🌟 Enhanced Installation Options (v2.0.0)

Choose from multiple installation modes with enterprise-grade features:

πŸ”’ Standard Installation (All Tools with Security)

# Linux/macOS
./install.sh

# Windows PowerShell
.\install.ps1

Features: TLS verification, rollback, update checking, security scans

🎯 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

Features: Input validation, secure tool selection, progress tracking

πŸ” Preview Installation (See What Would Be Installed)

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

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

Features: Safe preview, no system changes, detailed logging

πŸ“Š Verbose Installation (Detailed Output)

# Linux/macOS - Verbose mode with debugging
./install.sh --verbose

# Windows PowerShell - Verbose mode with debugging
.\install.ps1 -Verbose

Features: Detailed logging, step-by-step progress, error diagnostics

πŸ›‘οΈ Security-First Installation

# Linux/macOS - Include security configuration checks
./install.sh --security

# Windows PowerShell - Include security configuration checks
.\install.ps1 -Security

Features: Credential scanning, permission checks, security validation

🌐 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 (v2.0.0 Enhanced)

  • πŸ”„ 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
  • πŸ›‘οΈ Enterprise Security: TLS verification, credential scanning, permission checks
  • πŸ”„ Advanced Rollback: Automatic backup and restore functionality on failure
  • πŸ“š Beginner-Friendly: Clear documentation, examples, and learning resources
  • πŸŽ“ Learning-Focused: Designed specifically for DevOps beginners starting their journey

πŸ”’ Security & Reliability Features (NEW)

  • πŸ” TLS Certificate Verification: Secure downloads with certificate validation
  • πŸ›‘οΈ Input Sanitization: Prevents injection attacks and validates user input
  • πŸ” Credential Scanning: Detects exposed API keys and sensitive data
  • πŸ“‹ Permission Validation: Checks and sets appropriate file permissions
  • πŸ”„ Automatic Backup: Creates backups before making system changes
  • 🚨 Rollback on Failure: Automatic recovery with user confirmation
  • πŸ“Š Update Checking: Notifies when tool updates are available
  • πŸ₯ Health Diagnostics: Comprehensive system and tool health checks

✨ 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 with timestamps
  • βœ… System Validation: Checks disk space, memory, and internet connectivity
  • πŸ” Dry Run Mode: Preview installation without making changes
  • πŸ“‹ JSON Reports: Machine-readable reports for automation and CI/CD
  • 🎨 Enhanced UI: Better colors, formatting, and user experience
  • πŸ“š Support Documentation: Direct links to official documentation for each tool

πŸ“ Project Structure (v2.0.0 Enhanced)

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

πŸ“‹ Script Capabilities

Script Primary Function Key Features
install.sh/install.ps1 Tool Installation Security scans, rollback, update checking, progress tracking
verify.sh/verify.ps1 Environment Verification Health checks, security validation, JSON reports, diagnostics
scripts/setup.sh Environment Setup Backup/restore, validation, customization options

πŸ”§ Post-Installation Setup

After installation, set up your development environment:

πŸ› οΈ Environment Setup

# Linux/macOS
./scripts/setup.sh

# Windows PowerShell
.\scripts\setup.sh

Setup Options:

# Verbose setup with detailed output
./scripts/setup.sh --verbose

# Preview setup changes
./scripts/setup.sh --dry-run

# Skip backup creation
./scripts/setup.sh --skip-backup

# Skip sample project creation
./scripts/setup.sh --no-sample

# Recover from backup
./scripts/setup.sh --recover

πŸ” Environment Verification

# Linux/macOS - Standard verification
./verify.sh

# Windows PowerShell - Standard verification
.\verify.ps1

# Enhanced verification with health checks and security scanning
./verify.sh --health --security --verbose

# JSON output for automation
./verify.sh --json

πŸ“Š What You Get After Setup

1. πŸ”’ Secure Development Environment

  • Validated tool configurations with security checks
  • Proper file permissions and access controls
  • Credential exposure detection and prevention
  • Automated backup and recovery systems

2. πŸ“ Organized Project Structure

~/.devops-toolkit/
β”œβ”€β”€ configs/           # Tool configurations
β”œβ”€β”€ templates/         # Project templates
β”œβ”€β”€ scripts/          # Utility scripts
β”œβ”€β”€ examples/         # Example configurations
└── system-report.txt # Detailed installation report

3. πŸš€ Sample Project Ready

  • Complete web application template
  • Docker Compose configuration
  • VS Code workspace settings
  • Git repository with initial commit
  • DevOps aliases for productivity

4. πŸ“š Enhanced Learning Resources

  • Pre-configured development environment
  • Comprehensive documentation links
  • Health monitoring and diagnostics
  • Update notifications for tools

πŸ”§ Advanced Customization

The toolkit is designed to be highly customizable and extensible:

🎨 Configuration Customization

  • Modify configs/: Change tool configurations and settings
  • Edit templates/: Create custom project templates
  • Extend scripts/: Add utility scripts and automation
  • Update examples/: Add example configurations

πŸ”§ Script Customization

  • Installation Scripts: Add new tools or modify installation logic
  • Verification Scripts: Extend health checks and validation
  • Setup Script: Customize environment setup process
  • Add Features: Implement new security checks or diagnostics

πŸ“Š Automation Integration

# JSON output for CI/CD pipelines
./verify.sh --json > verification-results.json

# Automated setup for development environments
./scripts/setup.sh --skip-backup --no-sample

# Security scanning for compliance
./verify.sh --security --verbose > security-report.txt

πŸŽ“ Enhanced Beginner Learning Path (v2.0.0)

With our enterprise-grade toolkit, follow this structured learning path with built-in monitoring, security, and best practices:

πŸ“… Week-by-Week Learning Journey

Week 1: Foundation & Security Fundamentals

  • πŸ”’ Security First: Learn secure development practices
  • πŸ“Š Version Control: Master Git workflows with enhanced aliases
  • 🐳 Container Basics: Learn Docker with health monitoring
  • πŸ› οΈ Environment Setup: Configure your secure development environment
  • πŸ“‹ Verification: Use health checks to validate your setup

Week 2: Infrastructure as Code & Automation

  • πŸ—οΈ Terraform: Learn IaC with update notifications and validation
  • βš™οΈ Ansible: Master configuration management with security checks
  • ☁️ Cloud Basics: AWS/Azure CLI with credential security
  • πŸ”„ Automation: Build your first automated workflows
  • πŸ“Š Monitoring: Track tool versions and system health

Week 3: Container Orchestration

  • ☸️ Kubernetes: Learn kubectl with diagnostics and health checks
  • 🏠 Local Development: Master Minikube with monitoring
  • πŸ”§ Advanced Docker: Multi-container applications with Compose
  • πŸ›‘οΈ Security Scanning: Check for exposed credentials
  • πŸ“‹ JSON Reporting: Generate reports for automation

Week 4: Advanced DevOps Practices

  • πŸ”„ CI/CD Integration: Use JSON outputs for pipelines
  • πŸ”’ Security Compliance: Implement security best practices
  • πŸ“Š System Monitoring: Advanced health diagnostics
  • πŸ› οΈ Tool Management: Update checking and version control
  • πŸš€ Production Readiness: Prepare for real-world deployment

Week 5-6: Real-World Projects

  • πŸ—οΈ End-to-End Projects: Complete microservices applications
  • ☁️ Cloud Deployment: Deploy to AWS/Azure with security
  • πŸ”§ Infrastructure Automation: Terraform + Ansible + Kubernetes
  • πŸ“Š Monitoring & Alerting: System health and security monitoring
  • πŸ”„ Continuous Improvement: Update management and optimization

🎯 Learning Features

  • πŸ“Š Progress Tracking: Built-in verification and health checks
  • πŸ”’ Security Focus: Learn security best practices from day one
  • πŸ› οΈ Hands-On: Practical projects with real tools
  • πŸ“‹ Documentation: Comprehensive guides and examples
  • πŸ”„ Continuous Learning: Update notifications and version management

Enterprise-Ready Learning: Each week builds upon the previous, taking you from complete beginner to confident DevOps practitioner with security-first practices and enterprise-grade tooling.

πŸ“š Enhanced Documentation & Support

πŸ“– Comprehensive Documentation

After installation, you'll have access to enhanced support documentation:

πŸ“‹ Installation Reports

  • Text Report: ~/.devops-toolkit/system-report.txt
  • JSON Report: ~/.devops-toolkit/system-report.json
  • Setup Log: ~/.devops-toolkit-setup.log
  • Verification Log: ~/.devops-toolkit-verify.log

πŸ” Tool Documentation & Resources

Tool Documentation Version Check Health Status
Git https://git-scm.com/doc βœ… Auto-check βœ… Health monitor
Docker https://docs.docker.com/ βœ… Auto-check βœ… Daemon status
Kubernetes https://kubernetes.io/docs/ βœ… Auto-check βœ… Cluster status
Terraform https://developer.hashicorp.com/terraform/docs βœ… Auto-check βœ… Version validation
Ansible https://docs.ansible.com/ βœ… Auto-check βœ… Configuration check
VS Code https://code.visualstudio.com/docs βœ… Extension check βœ… Workspace validation
AWS CLI https://docs.aws.amazon.com/cli/ βœ… Auto-check βœ… Credential security
Azure CLI https://docs.microsoft.com/en-us/cli/azure/ βœ… Auto-check βœ… Authentication check

πŸ› οΈ Command Reference

# Quick verification commands
devops-verify              # Run environment verification
devops-start               # Start sample project
devops-stop                # Stop sample project
devops-logs                # View application logs

# Health and security checks
./verify.sh --health --security
./verify.sh --json --verbose

# Setup and recovery
./scripts/setup.sh --recover
./scripts/setup.sh --verbose

πŸ”§ Troubleshooting

  • πŸ“Š System Reports: Detailed environment status
  • πŸ” Health Diagnostics: Tool-specific health checks
  • πŸ›‘οΈ Security Scans: Credential and permission validation
  • πŸ“‹ Log Analysis: Comprehensive logging with timestamps
  • πŸ”„ Recovery Options: Automatic backup and restore

🀝 Contributing to v2.0.0

We welcome contributions to our enterprise-grade DevOps toolkit! Please see our Contributing Guidelines for details.

πŸš€ Priority Contribution Areas

  • πŸ”’ Security Enhancements: Add new security checks and validations
  • πŸ“Š Monitoring: Improve health diagnostics and reporting
  • πŸ› οΈ Tool Support: Add support for additional DevOps tools
  • πŸ“š Documentation: Improve guides and examples
  • πŸ”„ Automation: Enhance CI/CD integration features

πŸ’‘ Quick Contribution Ideas

  • Add support for new tools (Prometheus, Grafana, etc.)
  • Improve installation scripts with better error handling
  • Create new project templates (microservices, serverless)
  • Add more configuration examples and best practices
  • Enhance security scanning capabilities
  • Improve JSON reporting for automation
  • Add container security scanning
  • Implement compliance checks

πŸ§ͺ Testing & Validation

  • πŸ”’ Security Testing: Validate security features and scans
  • πŸ“Š Health Monitoring: Test diagnostics and reporting
  • πŸ”„ Rollback Testing: Verify backup and recovery functionality
  • 🌐 Cross-Platform: Test on Linux, macOS, and Windows
  • πŸ“‹ Documentation: Ensure all features are well-documented

πŸ“ž Enhanced Support

πŸ› Bug Reports & Issues

πŸ“‹ Support Information

When reporting issues, please include:

  • πŸ“Š System Reports: Attach ~/.devops-toolkit/system-report.txt
  • πŸ“ Logs: Include relevant log files (~/.devops-toolkit-*.log)
  • πŸ” Commands: Show the exact commands used
  • 🌐 Environment: OS version, tool versions, system specs
  • πŸ›‘οΈ Security: Any security concerns or findings

πŸ“š Self-Service Resources

  • πŸ“– Documentation: Comprehensive guides and examples
  • πŸ”§ Troubleshooting: Built-in diagnostics and health checks
  • πŸ”„ Recovery: Automatic backup and restore functionality
  • πŸ“Š Monitoring: Real-time system and tool health status

πŸ“„ 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 Secure DevOps Journey? (v2.0.0)

⭐ Key Benefits of v2.0.0

  • πŸ”’ Enterprise Security: TLS verification, credential scanning, permission validation
  • πŸ”„ Advanced Reliability: Automatic backup, rollback, error recovery
  • πŸ“Š Enhanced Monitoring: Health checks, diagnostics, JSON reporting
  • πŸ›‘οΈ Beginner-Friendly: Comprehensive validation and guidance
  • πŸš€ Production Ready: Enterprise-grade features for learning and production

🎯 Installation Options

Standard Install Security First Advanced Setup

πŸ“‹ Quick Commands

# Secure installation with verification
curl -fsSL https://raw.githubusercontent.com/NotHarshhaa/devops-environment-toolkit-beginners/master/install.sh | bash && \
./verify.sh --security --health

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

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

Built with ❀️ and πŸ”’ for secure DevOps learning

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