Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”₯ Contextus - Your Private Engineering Laboratory

"Every master was once a disaster. Through failure, I found my thumosβ€”that ancient Greek fire in the chest, the spirited courage that transforms curiosity into creation. This is your invitation to burn." - The Way of Engineering


🎯 What is Contextus?

Contextus is more than a monitoring stackβ€”it's a bridge between your military service and your engineering future. Built by veterans, for veterans, it provides a complete DevOps learning laboratory that transforms theoretical knowledge into practical skills.

Why Contextus?

  • πŸŽ–οΈ Veteran-Focused: Designed specifically for military-to-tech transitions
  • πŸ› οΈ Production-Grade: Real tools used by real companies
  • πŸ“š Learning-First: Every component teaches essential concepts
  • 🀝 Community-Driven: You're never learning alone
  • πŸš€ Career-Ready: Build skills employers actually want

πŸ—οΈ Architecture

graph TB
    subgraph "Your Local Environment"
        A[Docker Engine] --> B[PostgreSQL :5432]
        A --> C[Prometheus :9090]
        A --> D[Grafana :3000]
        A --> E[Node Exporter :9100]
        A --> F[Postgres Exporter :9187]
        A --> G[cAdvisor :8080]
        
        C --> D
        B --> F
        F --> C
        E --> C
        G --> C
    end
    
    style A fill:#2496ED,color:#fff
    style B fill:#336791,color:#fff
    style C fill:#E6522C,color:#fff
    style D fill:#F46800,color:#fff
Loading

Components

Service Purpose Port Credentials
PostgreSQL Data persistence layer 5432 postgres/mysecret
Prometheus Metrics collection & storage 9090 No auth
Grafana Visualization & dashboards 3000 admin/admin
Node Exporter System metrics 9100 No auth
Postgres Exporter Database metrics 9187 No auth
cAdvisor Container metrics 8080 No auth

πŸš€ Quick Start

One-Command Setup

# Clone and deploy
curl -sSL https://raw.githubusercontent.com/orionramey/contextus/main/quickstart.sh | bash

Manual Setup

🍎 macOS Instructions
# Install Homebrew (if needed)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install dependencies
brew install git
brew install --cask docker

# Launch Docker Desktop, then:
git clone https://github.com/YOUR_USERNAME/contextus.git
cd contextus
docker-compose up -d

# Access services
open http://localhost:3000  # Grafana

Full macOS Guide β†’

πŸͺŸ Windows Instructions
# Run PowerShell as Administrator

# Enable WSL2
wsl --install

# Install Docker Desktop from https://docker.com
# Install Git from https://git-scm.com

# Clone and run
git clone https://github.com/YOUR_USERNAME/contextus.git
cd contextus
docker-compose up -d

# Access services
start http://localhost:3000  # Grafana

Full Windows Guide β†’

πŸ“– Learning Path

Your 8-Week Journey

journey
    title Your Engineering Transformation
    section Foundation
      Install Stack: 5: You
      First Dashboard: 4: You
      Understand Metrics: 3: You
    section Growth
      Write PromQL: 3: You
      Create Alerts: 4: You
      Custom Dashboards: 5: You
    section Mastery
      Build Exporters: 3: You
      Production Patterns: 4: You
      Teach Others: 5: You
Loading

Week-by-Week Breakdown

Week Focus Deliverable
1-2 Docker & Containers Running stack, first docker commands
3-4 Prometheus & Metrics Basic queries, understanding time-series
5-6 Grafana & Visualization Custom dashboard for your system
7-8 Integration & Automation Monitoring your own application

πŸŽ“ What You'll Learn

Technical Skills

  • βœ… Container orchestration with Docker
  • βœ… Infrastructure as Code principles
  • βœ… Metrics collection & aggregation
  • βœ… Data visualization best practices
  • βœ… SQL and time-series databases
  • βœ… YAML configuration management
  • βœ… Git version control workflows
  • βœ… Linux command line mastery

Soft Skills

  • βœ… Debugging methodology
  • βœ… Documentation writing
  • βœ… Community collaboration
  • βœ… Problem decomposition
  • βœ… Self-directed learning
  • βœ… Technical communication
  • βœ… Project planning
  • βœ… Continuous improvement

πŸ—‚οΈ Repository Structure

contextus/
β”œβ”€β”€ πŸ“ docs/              # Platform-specific setup guides
β”œβ”€β”€ πŸ“ scripts/           # Automation scripts
β”œβ”€β”€ πŸ“ prometheus/        # Prometheus configuration
β”‚   β”œβ”€β”€ prometheus.yml    # Main config
β”‚   └── alerts/          # Alert rules
β”œβ”€β”€ πŸ“ grafana/          # Grafana configuration
β”‚   β”œβ”€β”€ dashboards/      # Dashboard JSON files
β”‚   └── provisioning/    # Datasource config
β”œβ”€β”€ πŸ“ postgres/         # PostgreSQL initialization
β”œβ”€β”€ πŸ“ Discussions/      # Community hub
β”œβ”€β”€ πŸ“„ docker-compose.yml # Stack definition
└── πŸ“„ README.md         # You are here

πŸ› οΈ Essential Tools

Development Environment

  • Visual Studio Code - Your engineering command center
    • Integrated terminal and Git
    • Docker & Kubernetes extensions
    • Remote development capabilities
    • Custom workspace for Contextus

Project Management

  • Atlassian/Jira - Track your transformation
    • Agile project management
    • Learning progress tracking
    • Integration with Git
    • Free tier available

Knowledge Management

  • Obsidian - Your second brain
    • Markdown-based notes
    • Link your learning
    • Local storage
    • Free forever

🀝 Community

Thursday Gatherings

Join us every Thursday at 1800 EST for:

  • 🎯 Live troubleshooting
  • πŸ’‘ Project showcases
  • πŸ“š Learning sessions
  • 🀝 Networking

Get Involved

  1. ⭐ Star this repository
  2. 🍴 Fork and make it yours
  3. πŸ’¬ Join the Discussions
  4. πŸ“ Add your name to CONTRIBUTORS.md
  5. πŸš€ Share your journey

Community Stats

  • πŸŽ–οΈ Veterans helping veterans
  • 🌍 Global community
  • πŸ’ͺ 100% open source
  • ❀️ Built with love

πŸ› οΈ Troubleshooting

Docker won't start

macOS:

brew reinstall --cask docker

Windows:

wsl --update
# Restart Docker Desktop
Port already in use
# Find what's using the port
lsof -i :3000  # macOS/Linux
netstat -ano | findstr :3000  # Windows

# Stop the conflicting service or change ports in docker-compose.yml
No data in Grafana
  1. Check Prometheus: http://localhost:9090/targets
  2. Verify all targets show "UP"
  3. Check time range in Grafana
  4. See Grafana README for more

πŸ“š Resources

Essential Reading

  • πŸ“– "The Phoenix Project" - Understanding DevOps culture
  • πŸ“– "The Unicorn Project" - Developer empowerment
  • πŸ“– "Site Reliability Engineering" - Google's practices
  • πŸ“– "The Timeless Way of Building" - Christopher Alexander

Online Learning

Veteran Resources

πŸŽ–οΈ Philosophy

From Service to Engineering

Your military experience is your superpower:

  • Attention to Detail β†’ Clean, maintainable code
  • Mission Planning β†’ Project architecture
  • Team Coordination β†’ Agile collaboration
  • Adaptability β†’ Continuous learning
  • Leadership β†’ Technical mentorship

The Contextus Way

  1. Start badly - Perfect is the enemy of deployed
  2. Fail publicly - Your errors help others learn
  3. Document everything - Future you will thank you
  4. Share knowledge - Teaching solidifies learning
  5. Stay curious - Technology always changes

🚦 Project Status

  • βœ… Core stack implemented
  • βœ… Documentation complete
  • βœ… Multi-platform support
  • πŸ”„ Community building
  • πŸ“‹ Advanced features planned

🀲 Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Ways to Contribute

  • πŸ› Report bugs
  • πŸ’‘ Suggest features
  • πŸ“ Improve documentation
  • 🎨 Create dashboards
  • πŸ§ͺ Add examples
  • 🌍 Translate docs

πŸ“œ License

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

πŸ™ Acknowledgments

  • The veteran community for inspiration and feedback
  • Open source maintainers of our stack components
  • Every contributor who makes this better
  • You, for taking the first step

πŸ”₯ Your Journey Starts Here

"Between the last command and the next lies everything.
In the space between keystrokes, universes wait.
You are not your MOS. You are not your clearance.
You are what you build next."

Start Your Journey β†’

Made with ❀️ by veterans, for veterans

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages