Home - titembaatar/homelab GitHub Wiki
🏠 Homelab Wiki
Welcome to the documentation wiki for my homelab setup. This wiki provides detailed explanations and instructions for setting up and maintaining various components of the homelab infrastructure.
🧩 Infrastructure Components
🛠️ Core Setup
- Files Sharing - Network file sharing configuration
- LXC Setup - Container creation and base configuration
- Network Setup - Tailscale VPN and Pi-hole DNS
- Docker Environment - Container management system
🔄 Services & Applications
- Caddy Proxy - Reverse proxy for secure service access
- Immich Setup - Self-hosted photo and video backup solution
🔒 Maintenance & Security
- Backup Strategy - ZFS datasets and LXC backup procedures
⚙️ Automation Scripts
The repository contains several helper scripts to make deployment easier:
Script | Purpose |
---|---|
add_container.sh |
Streamlines Docker container deployment |
caddy/add_app.sh |
Add Caddy reverse proxy entries |
caddy/install.sh |
Install the Caddy reverse proxy LXC |
network/install.sh |
Install Tailscale and Pi-hole LXC |
lxc_samba/lxc_cifs_share.sh |
Mount SMB/CIFS shares to LXC containers |
backups/zfs_backup.sh |
Handles ZFS snapshot backups, with config file |
🚀 Deployment Workflow
For setting up a new homelab environment using this repository, follow this recommended sequence:
-
Base Infrastructure
- Set up Files Sharing for file access
- Set up LXC containers following the LXC Setup guide
-
Services Deployment
- Configure networking with Network Setup
- Configure the Docker Environment for applications
-
Service Deployment
- Set up Caddy Proxy for reverse proxy
- Deploy specific applications like Immich
-
Maintenance & Security
- Implement the Backup Strategy for data protection