# Packages
# README
HOMELAB 🏡
Revamping my Mac Mini into a Homelab for Continuous Open Learning 🎓
Table of Contents
🕧 Background
I've made the decision to repurpose my old Mac mini as a new homelab. Over time, I've discovered an effective method of seamlessly transitioning between my Macs without wasting precious time on reinstalling the necessary tools required for my day job using Docker and Development Containers
My ultimate goal with this homelab project is to replicate the seamless experience I have achieved on my Macs. In doing so, I aim to maintain a public repository where I can openly share my newfound knowledge and document any mistakes I make along the way. By embracing this transparent approach, I hope to foster continuous learning and personal growth.
⌛ Roadmap
- Setup a new github repository. Repo
- Develop or utilize existing framework to generate README.MD
- Document Project Structure
📝 Pre-Requisites
This project was setup with 2 configuration modes in mind Ⓜ️
- Development Mode - I won't always be working on my homelab Mac, so the tools required for running the homelab may not necessarily be the same as those I need for development. Dev Containers provide a straightforward solution, allowing me to run this project on any machine 😁
- HomeLab - Set of tools required to run my homelab
Development Mode
- Visual Studio Code VSC
- VSC Extensions
Homelab
- Step 1 - Install go-task
brew install go-task
# List Available Tasks
task -l
- Step 2 - Install Pre-Requisites on the Mac
# Run initial Task to install pre-requisites
task mac:init
📂 Project Structure
TODO
References
-
- Task is a task runner / build tool that aims to be simpler and easier to use than, for example GNU MAKE
-
- A linter for YAML files.
-
Windows Subsystem for Linux (Ubuntu):
- WSL enables you to use Linux tools, like Bash or Grep, completely integrated with Windows tools, like PowerShell or Visual Studio Code, with no need to dual-boot.
-
- Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.
-
VSCode Remote Development Extension Pack:
- An extension pack that lets you open any folder in a container, on a remote machine, or in WSL and take advantage of VS Code's full feature set.
-
- The fastest way to containerize applications
-
- Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.
-
- The Visual Studio Code Dev Containers extension lets you use a Docker container as a full-featured development environment.
License
MIT