A bunch a docker-compose's that make up sections of my infrastructure. Using renovate bot to keep containers UTD
This repository has been archived on 2024-07-30. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
Renovate Bot 612626a1c7
All checks were successful
continuous-integration/drone/pr Build is passing
⬆️ Update docker.mafyuh.xyz/ollama/ollama Docker tag to v0.1.39
2024-05-24 08:28:28 +00:00
ag-backup ⬆️ Update docker.mafyuh.xyz/adguard/adguardhome Docker tag to v0.107.50 2024-05-23 14:28:30 +00:00
ag-main ⬆️ Update docker.mafyuh.xyz/adguard/adguardhome Docker tag to v0.107.50 2024-05-23 14:28:30 +00:00
AI ⬆️ Update docker.mafyuh.xyz/ollama/ollama Docker tag to v0.1.39 2024-05-24 08:28:28 +00:00
arm ⬆️ Update docker.mafyuh.xyz/louislam/uptime-kuma Docker tag to v1.23.13 2024-05-23 01:12:28 +00:00
arrs ⬆️ Update ghcr.io/linuxserver/prowlarr Docker digest to 664812e 2024-05-22 04:30:33 +00:00
authentik Merge branch 'main' into renovate/ghcr.io-goauthentik-ldap 2024-05-07 22:32:54 +00:00
cf ⬆️ Update docker.mafyuh.xyz/cloudflare/cloudflared Docker digest to a3ba3f7 2024-05-16 17:18:58 +00:00
downloaders ⬆️ Update ghcr.io/linuxserver/sabnzbd Docker digest to 0215b55 2024-05-23 02:30:31 +00:00
drone ⬆️ Update docker.mafyuh.xyz/drone/drone Docker tag to v2.24.0 2024-05-13 10:18:58 +00:00
jellyfin ⬆️ Update ghcr.io/linuxserver/jellyfin Docker digest to f948e28 2024-05-21 13:30:35 +00:00
kasm ⬆️ Update ghcr.io/linuxserver/kasm Docker digest to 95c8d5d 2024-05-13 00:00:07 +00:00
netboot Update netboot/docker-compose.yml 2024-05-18 18:26:04 +00:00
nexus ⬆️ Update docker.mafyuh.xyz/sonatype/nexus3 Docker digest to d4c592b 2024-05-16 14:18:58 +00:00
portainer Update portainer/docker-compose.yml 2024-05-12 23:47:48 +00:00
scripts Update scripts/README.md 2024-05-21 01:20:29 +00:00
twingate ⬆️ Update docker.mafyuh.xyz/twingate/connector Docker digest to d916c02 2024-05-21 18:30:39 +00:00
.drone.yml Update .drone.yml 2024-04-27 01:34:49 +00:00
.gitignore adding doplarr 2024-04-11 18:31:35 -04:00
README.md Update README.md 2024-05-24 01:18:18 +00:00
renovate.json Add renovate.json 2024-05-04 19:20:57 +00:00

Build Status Pulls

Auto-Homelab

Homelab docker-compose environment defined in code. Using Drone and Renovate bot for CI along with n8n automation for CD.

Wiki | How to Setup | Blog | Inspiration

Hypervisor OS Tools VPS (arm) Firewall
Proxmox Ubuntu Ubuntu Forgejo Drone Docker Oracle pfSense

Apps in Repo:

Logo Name Description
AdGuard Home Network Wide DNS adblock as well as my DNS server (2/2)
AdGuard Home Sync Syncs my instances of Adguard
authentik Open Source Identity Provider
Bazarr Downloads subtitles for Radarr/Sonarr
Cloudflare Tunnels How I expose some of these services
Doplarr Allows my users to request content through Discord if they choose
Drone Selfhosted CI/CD pipeline manager
FlareSolverr Proxy server to bypass Cloudflare and DDoS-GUARD protection
Forgejo This site
Gotfiy Self hosted notification service
Homarr Homelab dashboard that integrates with the arr's so I see data in 1 place
Jellyfin Open Source Streaming Service for home media like Plex
Jellyseerr Request platform for my Jellyfin user's to request content
jfa-go Used for some PPV/Live TV automations to create users for certain periods of time
Kasm Docker container streaming platform for browser-based access to desktops, applications, and web services
Lidarr Music Collection Manager
LinkStack Creating a static links page for my Jellyfin users
MakeMKV Used to rip Bluray's with my LG BU40N drive
mindsdb Connects Ollama models to 100+ different databases, easy to use.
Netboot.xyz Network boot instead of using my ventoy USB
Nginx Proxy Manager Reverse Proxy used for its simplicity (1/3)
n8n Switching from ActivePieces to n8n, more robust
Ollama Easiest way to run LLM's on your own hardware
open-webui Creates a ChatGPT like web interface for talking to Ollama models
Portainer Web-based management for Docker containers
Prowlarr Searches indexers for Radarr/Sonarr
qBittorrent VPN Modified qBittorrent with VPN killswitch enabled
Radarr Movie Collection Manager
Sabnzbd Usenet downloader to download content
Sonarr Radarr, but for TV Shows
Sonatype Nexus Self-hosted Docker registry to help lower Docker pulls
Twingate Connectors Main VPN between homelab and cloud VPS's
Uptime Kuma Self hosted service uptime tracker

Apps not yet in repo:

Logo Name Description
AWX (Ansible Tower) Used to easily run Ansible playbooks on all my VM's, installed on Minikube
Grafana Monitoring for various services
Wordpress WooCommerce store setup for JF PPV access
Guacamole Remote access in browser via SSH, RDP, VNC, etc
Home Assistant Slowly migrating over to Home Assistant from Google Home
Plausible Analytics tracker for certain websites (Blog)
wazuh Security platform monitoring everything with agents installed on all VM's

Full Workflow Chart

graph TD
  A1((Renovate Bot Scans for Updates)) --> A2{Updates Found?}
  A2 -- Yes --> B[Make PR]
  A2 -- No --> C(End)

  B --> D{PR Merged?}
  D -- No --> E(End)
  
  subgraph Handle Merged PR
    D -- Yes --> F[Extract App Name]
    F --> G[SSH to Host Machine]
    G --> H[Git Pull & Docker Compose Up]
    H --> I{Error?}
    I -- Yes --> J[Send Gotify Notification]
    J --> K(End)
    I -- No --> L[Extract PR Number]
    L --> M[Add PR Number to Forgejo API URL]
    M --> N[Send Review with Logs]
    N --> O(End)
  end
  
  subgraph Notification on PR Creation
    B --> P[Notify via Gotify]
  end
  
  subgraph Release Notes Handling
    Q((PR Webhook Received)) --> R{PR Open?}
    R -- No --> S(End)
    R -- Yes --> T[Hit GitHub API for Release Notes]
    T --> U[Extract PR Number from webhook]
    U --> V[API Call to Foregjo]
    V --> W[Leave Release Notes as Comment]
    W --> S
  end
  
  P --> Q

To-Do

  • Get all dependencies configured to pull changelogs on PR
  • CI Passing Badge in README cb514e2b09
  • Add README to each directory
  • Get upstream release notes for linuxserver containers #207 (comment)
  • Harden all VM's to be CIS compliant