{"id":21869669,"url":"https://github.com/lukasolivier/homeserver","last_synced_at":"2026-04-13T23:04:02.575Z","repository":{"id":264765514,"uuid":"894337696","full_name":"LukasOlivier/homeserver","owner":"LukasOlivier","description":" A collection of Docker Compose files for managing a self-hosted Raspberry Pi 4 server with RAID1 storage, using louislam/dockge. Includes setups for Nextcloud, Vaultwarden, PiVPN, and more. Perfect for secure, efficient self-hosting. ","archived":false,"fork":false,"pushed_at":"2024-11-26T07:22:05.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T22:16:12.813Z","etag":null,"topics":["debian","docker","raspberry-pi","self-hosted","server-management"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LukasOlivier.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-26T07:18:54.000Z","updated_at":"2024-11-26T07:22:09.000Z","dependencies_parsed_at":"2024-11-26T08:37:52.276Z","dependency_job_id":null,"html_url":"https://github.com/LukasOlivier/homeserver","commit_stats":null,"previous_names":["lukasolivier/homeserver"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukasOlivier%2Fhomeserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukasOlivier%2Fhomeserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukasOlivier%2Fhomeserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukasOlivier%2Fhomeserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LukasOlivier","download_url":"https://codeload.github.com/LukasOlivier/homeserver/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244875045,"owners_count":20524591,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["debian","docker","raspberry-pi","self-hosted","server-management"],"created_at":"2024-11-28T06:08:43.071Z","updated_at":"2026-04-13T23:04:02.544Z","avatar_url":"https://github.com/LukasOlivier.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Home Server 🐳\n\nWelcome to the repository containing all the Docker Compose configurations for my Raspberry Pi 4-powered home server. This setup is designed to maximize utility, efficiency, and privacy using various self-hosted applications.\n\n---\n\n## 📋 System Overview\n\n| **System Info**        | **Details**                   |\n|-------------------------|-------------------------------|\n| **OS**                 | Debian 12 (Bookworm)          |\n| **Hardware**           | Raspberry Pi 4 Model B        |\n| **Memory**             | 4GB RAM                       |\n| **RAID Type**          | RAID1                         |\n\n\n## 🔧 Hardware Overview\n\n| **Component**           | **Model/Details**                                   |\n|--------------------------|----------------------------------------------------|\n| **Primary Disk**         | Samsung SSD 860 QVO 1TB                            |\n| **Secondary Disk**       | Toshiba External USB 3.0 1TB                       |\n| **OS Storage**           | SD Card (128GB)                                   |\n| **Other Hardware**       | Case, charger, and USB hub info coming soon.       |\n\n---\n\n## 🛠️ Applications\n\nHere is a list of the self-hosted applications running on this server:\n\n| **Application**   | **Purpose**                                                                                   |\n|--------------------|-----------------------------------------------------------------------------------------------|\n| **Nextcloud**      | Personal cloud storage and file-sharing platform.                                            |\n| **Immich**         | A self-hosted media backup solution, perfect for managing your photos and videos.            |\n| **Cloudflare Tunnels** | Securely expose your local server to the internet using Cloudflare’s tunnel service.     |\n| **PiVPN**          | VPN service using WireGuard, providing secure remote access to your home network.            |\n| **Uptime Kuma**    | Monitoring service to track uptime and the health of applications and devices.               |\n| **Cockpit**        | Web-based interface for server management, making it easy to monitor and control resources.  |\n\n## 🖥️ Container Management\n\nThis server uses [`louislam/dockge`](https://github.com/louislam/dockge), a fancy, easy-to-use, and reactive self-hosted Docker Compose stack-oriented manager, to manage and deploy containers efficiently.\n\n---\n\n## 📚 Tutorials Followed\n\nI followed several excellent guides to set up various components of this server. Here are the resources:\n\n| **Setup**          | **Guide**                                                                                  |\n|---------------------|--------------------------------------------------------------------------------------------|\n| **Cockpit**         | [How to Install Cockpit](https://pimylifeup.com/raspberry-pi-cockpit/)                     |\n| **WireGuard VPN**   | [WireGuard Setup Guide](https://pimylifeup.com/raspberry-pi-wireguard/)                    |\n| **Static IP**       | [Assigning a Static IP Address](https://pimylifeup.com/raspberry-pi-static-ip-address/)    |\n| **RAID Setup**      | [YouTube Tutorial](https://www.youtube.com/watch?v=Y_l1BCCqZSQ)                           |\n| **RAID Alerts**     | Custom script for RAID monitoring and alerting (steps below).                             |\n\n---\n\n## 🚨 RAID Alert Setup\n\n1. **Create the alert script**:\n   ```bash\n   sudo nano /usr/local/bin/raid_alert.sh\n   ```\n\n2. **Add the following content:**\n    ```bash\n    #!/bin/bash\n\n    # Discord webhook URL\n    WEBHOOK_URL=\"https://discord.com/api/webhooks/YOUR_WEBHOOK_URL\"\n\n    # Message content\n    MESSAGE=\"🚨 **RAID Alert**: A drive has failed in your RAID array on $(hostname)! Check immediately. 🚨\"\n\n    # Send the message\n    curl -H \"Content-Type: application/json\" -X POST -d \"{\\\"content\\\": \\\"$MESSAGE\\\"}\" $WEBHOOK_URL\n    ```\n       \n3. **Save and exit. Make the script executable:**\n    ```bash\n    sudo chmod +x /usr/local/bin/raid_alert.sh\n    ```\n\n4. **Update the RAID monitoring configuration:**\n    ```bash\n    sudo nano /etc/mdadm/mdadm.conf\n    ```\n\n5. **Add the following line:**\n    ```bash\n    PROGRAM /usr/local/bin/raid_alert.sh\n    ```\n\n6. **Restart the RAID monitoring service:**\n    ```bash\n    sudo systemctl restart mdmonitor\n    ```\n---\n\n# 🎉 Acknowledgments\n\nA big thanks to the creators of the guides and tutorials listed above. Their work made this setup possible!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukasolivier%2Fhomeserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukasolivier%2Fhomeserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukasolivier%2Fhomeserver/lists"}