User
Write something
🔥Official GitHub Repo for Challenges
Everyone @David Vincent had a great idea to create a repo for all the challenge docs, files, configs, code, etc. I have created an official "HomeLabExplorers" repo here: https://github.com/brandonleegit/homelabexplorers.git As David mentioned, this will also serve the purpose of ones getting familiar with Git as well, with their home lab projects. I have created the repo that contains a "challenges" folder. So you will just need to clone it down and create pull requests to have your code merged in. I think possibly a good idea would be to use your HomeLabExplorers name or any name for your subfolder underneath and maybe create folders for "challenge 1" challenge 2, etc. However, let me know your thoughts as this is a work in progress. Thanks Everyone!
🔥 Challenge Series #2: Go Beyond the Basics!
🚀 Home Lab Challenge #2: Monitor It, Automate It, Scale It! In the last challenge, you laid the foundation — whether that was your first Proxmox VM, your first Docker container, or even deploying Nginx Proxy Manager for routing apps. This week, we’re kicking things up a notch with new challenges focused on observability, automation, and scaling your home lab stack. This round of challenges is designed to take your setup from "it works" to "I can see it, automate it, and scale it." Pick your tier, declare it in the thread, and share your progress all week long. And remember, this is a group mission. Ask questions. Post screenshots. Drop tips. Let’s level up together. 🟢 Level 1 – Beginner: “Know What’s Happening” Challenge: Set up container-level monitoring - Install cAdvisor and Node Exporter in Docker - Use Prometheus + Grafana or just a basic Prometheus dashboard to monitor CPU, memory, and container usage - Bonus: Add an alert rule to notify if a container crashes or hits a memory limit Goal: Start seeing inside your containers and get comfortable reading resource metrics. 🟡 Level 2 – Intermediate: “Automate the Boring Stuff” Challenge: Automate app deployment with Docker Compose or Ansible - Convert one of your existing manually-installed apps to a docker-compose.yml stack - Or, write a basic Ansible playbook that installs Docker and deploys an app on a remote host - Bonus: Set up automatic updates using Watchtower or Shepherd Goal: Get repeatable deployments and start thinking like a DevOps pro. 🔵 Level 3 – Advanced: “Make It Resilient & Scalable” Challenge: Add high availability or resilience to your apps - Use Docker Swarm to deploy an app across multiple nodes - Or use Kubernetes to create a deployment with multiple replicas and a LoadBalancer or Ingress - Bonus: Test what happens if one node goes down — do your apps stay up? Goal: Learn the building blocks of HA setups and resilience strategies.
🔥Challenge Series #3: Document your Home Lab!
Challenge 3: Document Your Home Lab in Git Repository: https://github.com/brandonleegit/homelabexplorers.git Folder: challenges/<your-github-username>-challenge3/ ⚠️ IMPORTANT: Do not commit any sensitive information—redact or anonymize IP addresses, hostnames, credentials, keys, or any other secrets before you push your changes. What to Do - Clone the Repo - git clone https://github.com/brandonleegit/homelabexplorers.git - cd homelabexplorers Create a New Branch - git checkout -b docs/home-lab-inventory - Create Your Challenge Folder under the root /challenges folder - mkdir -p challenges/$(git config user.username)-challenge3 - cd challenges/$(git config user.username)-challenge3 - Add Your Documentation Hardware Inventory (hardware.md) - List each device (e.g., “Server-1: Dell R420, 2×E5-2650, 64 GB, 4 × 4 TB”, IP: 10.1.X.X – redact last octet). Network Topology (network.md) - Describe VLANs, subnets, uplinks. Redact exact IPs (e.g., 192.168.1.X). Optionally include an ASCII or PlantUML diagram. Services & Workloads (services.md) - Catalog VMs, containers, clusters, key apps (e.g., “Prometheus on VM-2, Gitea on container-1”). - Configuration Snippets (configs/) Add sanitized versions of critical .yml or .conf files (e.g., remove API keys, passwords). Stage & Commit - git add challenges/$(git config user.username)-challenge3 - git commit -m "docs: add home-lab documentation for Challenge 3" Push & Open a PR - git push origin docs/home-lab-inventory - Then open a pull request against main. Share Your Submission - Post the PR link (or the commit SHA) back in the “Challenges” thread. - Call out one tricky part you documented (e.g., your VLAN tagging approach or a custom storage config).
5
0
🔥Next round of challenges or projects
Let me know your thoughts and feedback from the first round of challenges. While we had good involvement from several, let me know your thoughts about how to make these even more engaging and helpful. Also, I called these weekly challenges but we don't have to have any specific end date. I do find though that when I set a date for completion on most projects it is helpful to set a target and stay focused.
Level 3 challenge
I decided to be crazy and attempt the level 3 challenge of converting an app I'm currently running in Docker over to Kubernetes. The crazy part is I picked my Nginx Proxy Manager on Docker to convert. To say it has been difficult would be an understatement. I'm doing it on a separate VM so I'm not messing up anything in production. I did do a successful conversion of a MeshCentral Docker app, however. It had a few hiccups along the way but nothing compared to the NPM conversion.
1-7 of 7
Home Lab Explorers
skool.com/homelabexplorers
Build, break, and master home labs and the technologies behind them! Dive into self-hosting, Docker, Kubernetes, DevOps, virtualization, and beyond.
Leaderboard (30-day)
Powered by