____
| _ \ _ __ _ ___ __
| | | | '__| | | \ \ / /
| |_| | | | |_| |\ V /
|____/|_| \__,_| \_/
Setup Scripts for a HomeLab
Create Environment Files: In every serviceโs folder, copy the example environment file to a new .env file
Update the .env files and other configs for each service based on your requirements.
Run the main script to bring all your services down and up smoothly:
./down_and_up.sh
If you want to set up your server environment to match this repo exactly
Run the provided post-install script (it must be a Debian derivative)
./debian_post_install.sh
From my homelab, I have made a few services available to the public under prinzpiuz.in. Feel free to use them if you find them useful.
| Name | Description | Config |
|---|---|---|
| Gluetun | VPN service for containers | /configs |
| qBittorrent | Torrent client | /configs |
| Radarr | Movies automation | /configs |
| Sonarr | TV automation | /configs |
| Readarr | Book management | /configs |
| Prowlarr | Indexer manager | /configs |
| Bazarr | Subtitle automation | /configs |
| Jackett | Indexer proxy | /configs |
| Recyclarr | Config sync for *Arr apps | /configs |
| Unpackerr | Unpack Downloaded Files | /configs |
| Flaresolverr | Captcha solver | /configs |
| SwurApp | Companion utility | /configs |
| Synthwave | Music Downloader | /configs |
| Name | Description | Config |
|---|---|---|
| n8n | Work Flow Automations | workflows |
| Name | Description | Config |
|---|---|---|
| Backrest | Simple backup management | /configs |
| Name | Description | Config |
|---|---|---|
| Docker Proxy | Secure Docker socket proxy | /configs |
| Homepage | Dashboard for homelab | configs |
| MySpeed | Self-hosted speed test | /configs |
| Name | Description | Config |
|---|---|---|
| Audiobookshelf | Audiobooks streaming server | /configs |
| Jellyfin | Media server | /configs |
| Jellyseerr | Request manager for Jellyfin | /configs |
You can fork this repository and customize the Caddy configuration by editing the Caddy Template File. After updating, you can reuse the deployment scripts located in the action files to deploy your changes.
The public services are reverse proxied using Tailscale, which allows secure access to only the services you want exposed to the public internet. Use the provided Public Compose File to deploy public services. Configure environment variables by copying and editing the env File as needed.
| Name | Description | Config |
|---|---|---|
| Caddy | Reverse proxy & web server | /configs |
| Name | Description | Config |
|---|---|---|
| Qdarnt | Vector DB | /configs |
| BentoPDF | PDF Tools | /configs |
| dawarich | Timeline Tracker | /configs |
| BloTils | Blog Utilities | /configs |
| Name | Description | Config |
|---|---|---|
| Uptime-Kuma | Uptime Monitor | /configs |
| Beszel | System Monitoring | /configs |
| Quantum File Browser | File Browser | /configs |
Get container IP address:
docker inspect -f '' <container_name>