/maisonneux

Personal provisioning and microservices setup for a home server

Primary LanguageHCLGNU General Public License v3.0GPL-3.0

Maisonneux

Setup of my personal homelab ("maisonneux" can be jokingly translated to "homies" in French).

I first started with a simple server with OpenMediaVault with Docker configured in the UI, then migrated to the stacks available in the folder docker-compose/.

After some years and an upgrade on the server (more RAM and a new CPU), I migrated the entire server to Proxmox in a single Debian VM to keep the services running, then move the storage management to a TrueNAS Core VM and the microservices in a Kubernetes cluster using Talos Linux.

The provisioning of the virtual machines as well as LXCs in Proxmox is done with OpenTofu (or Terraform) using the Proxmox provider.

The main operations (cluster and VM provisioning) are performed using the Makefile at the root of the repository. Help command is coming soontm.


Repository organization

  • docker-compose/ contains the former stacks I used to manage my microservices. See this page for to see the list of microservices deployed.
  • helm/ contains the Helm charts used to deploy the microservices in K8s
  • scripts/ contains scripts used to setup environment, check health of services or build images
  • terraform/ contains a multi-environment . Static environment deploys static VMs and LXCs (such as the storage VM), and K8s environment deploys a Kubernetes cluster. See this page for more informations.

Issues

Issues are not opened, as I'm not supposed to give support for the softwares/technologies I'm using. For that, please refer to their own repositories or forums. However, I'm open to any advice and discussion in the Discussion section.

Tools