Skip to content

bachtran02/homelab-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Homelab Configuration

This repository contains the configuration files for my personal homelab setup.

Inspiration

The idea of self-hosting my own website kickstarted this whole project, which has been both fun to build and maintain. Getting my hands dirty with Linux terminals on different devices across different architectures has helped me become more familiar and helped me appreciate the lightweight, developer-friendly nature of Linux. The setup is inspired by this WireGuard HAProxy Gateway guide and topi314.

WireGuard + HAProxy Architecture Diagram from WireGuard HAProxy Gateway.

Servers

Virtual Private Server (vps)

This server acts as a public gateway to my homelab, providing secure access from anywhere in the world. It also allows my website, which hosted locally to be publicly accessible.

  • Server (WireGuard server): A server for VPN tunnel that connects all the devices in my homelab network. It's configured with HAProxy to proxy traffic to differenet end-hosts through my domain bachtran.dev.
  • VPN (WireGuard server): Another WireGuard server, this time purely for secure internet access in cafe, airport, etc, using Pi-hole as DNS for ad-blocking in the network. This tunnel is isolated from Server which allows access to the homelab.

Raspberry Pi 5 (pi5)

Most services are run here. Accessed remotely via VPN tunnel as a WireGuard client of Server.

  • Pi-hole: A network-wide ad-blocker.
  • Portainer: A lightweight management UI that allows for easy management of Docker containers.
  • PostgreSQL: An open-source object-relational database system, right now used for storing user's playlists for MusicCatGo.
  • Traefik: A modern reverse proxy and load balancer that makes deploying microservices easy. I use it with Let's Encrypt to automatically provision SSL certificates for my services, aka my website and websocket server which serves my real-time music streaming activity.

About

Configuration ideas and files for my personal homelab setup.

Resources

Stars

Watchers

Forks