An enterprise-grade, reproducible DevOps lab environment for learning, building, deploying, monitoring, and troubleshooting modern application delivery infrastructure.
This repository serves as a central blueprint, organizing installation, configuration, verification, and cleanup workflows for each component.
Note
This setup is compatible with Ubuntu/Debian-based Linux distributions and Windows via WSL2. All installation workflows have been actively tested and verified on AWS EC2 & Windows WSL2 running on Ubuntu 24.04 LTS.
RHEL-based distributions (e.g., Rocky Linux, AlmaLinux, CentOS, Fedora) are not currently covered, as they utilize dnf/yum package managers instead of apt.
devops-platform-stack/
├── assets/ # Images and other visual assets
├── config/ # Configuration files for platform tools and services
├── docs/ # Setup guides, prerequisites, and verification steps
├── scripts/ # Installation, automation, maintenance, and cleanup scripts
├── .gitignore # Git ignore rules
├── LICENSE # Project license
└── README.md # Main project documentation
- Java & Maven: Enterprise backend runtime and build automation.
- Node.js, npm: JavaScript, TypeScript runtime and package manager
- nvm: Node.js version manager for installing and switching between Node.js versions.
- Python, pip & venv: Automation scripting, package management, and isolated virtual environment utilities.
- Jenkins: Core continuous integration and pipeline engine.
- Argo CD: GitOps-driven continuous delivery for Kubernetes.
- Nexus Repository: Private registry for binaries and artifacts.
- SonarQube & PostgreSQL: Automated code quality analysis (SAST) backed by Postgres DB
- Docker, Compose & containerd: Local container engine, multi-container orchestration, and core container runtime.
- Kubernetes (Kind): Multi-node local Kubernetes clusters running over Docker.
- Helm & Kustomize: Package management and declarative manifest customization for Kubernetes deployments.
- Prometheus & Metrics Server: Infrastructure and application metric collection.
- Grafana: Centralized visualization dashboards.
- Loki & Fluent Bit: Log aggregation, routing, and parsing.
- Terraform: Declarative Infrastructure as Code for cloud provisioning.
- Ansible: Configuration management and application deployment.
- AWS CLI: Cloud resource management
- kubectl: Kubernetes cluster control
- Trivy: Vulnerability scanning for images and repositories.
- Git: Distributed version control
- jq / yq: Command-line JSON and YAML processors.
- Make: Build automation and workflow shortcut manager.
Ensure your local machine meets all hardware requirements before starting the lab:
# Clone the repository
git clone https://github.com/ahsan598/devops-platform-stack.git
cd devops-platform-stack/
# View the prerequisites document in the terminal
cat docs/prerequisites.mdCheck all pinned versions across runtimes, container engines, and observability stacks verified for this stack:
# View all pinned versions
cat docs/tools-version.md-
The
scripts/contains installation or cleanup scripts for required tools and packages.# Navigate to installation scripts cd scripts/install/ # Navigate to cleanup scripts cd scripts/cleanup/
-
The
config/directories contain the configuration setup required for each platform component# Navigate to GitOps configuration cd config/gitops/ # Navigate to Jenkins configuration cd config/jenkins/ # Navigate to Kind configuration cd config/kind/ # Navigate to Observability configuration cd config/observability/