Fly-Hi is a versatile server setup that secures, manages, downloads, categorizes, subtitles, and serves all your media. The script offers options to install the following software:
Management Apps:
Dashboards
- Heimdall - Keep your services organized on a nice Dashboard (https://github.com/linuxserver/Heimdall)
- Homarr - A sleek, modern dashboard that puts all of your apps and services at your fingertips (https://homarr.dev/)
System info and management
- Portainer - Keep your docker containers in check! (https://www.portainer.io/)
- CockpitProject - System Management Tool (https://cockpit-project.org)
- Watchtower - Keep your docker containers up to date! (https://github.com/containrrr/watchtower)
- Netdata - Distributed real-time, health monitoring platform for systems, hardware, containers & applications, collecting metrics (https://www.netdata.cloud/)
- Glances - System Information (https://nicolargo.github.io/glances/)
- Uptime-Kuma - Real time monitoring of your services (https://github.com/louislam/uptime-kuma)
- Scrutiny - HDD/SSD monitoring tool with a nice dashboard (https://github.com/AnalogJ/scrutiny)
Databases
- PhpMyAdmin - WEBui for managing MySQL/MariaDB databases, tables, columns, relations, indexes, users, permissions, etc (https://hub.docker.com/r/phpmyadmin/phpmyadmin/)
- PgAdmin - WEBui for managing Postgres databases, tables, columns, relations, indexes, users, permissions, etc (https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html)
Logs
- Dozzle - All docker logs in one place on a nice WEB-UI (https://dozzle.dev/)
- Graylog - Log Aggregator with a WEB-UI (https://graylog.org/)
Misc
- Ntfy - Beautiful push notification server for docker services, ssh, cronjobs etc. (https://docs.ntfy.sh/)
- Vaultwarden - Password Manager (https://hub.docker.com/r/vaultwarden/server)
- Home-Assistant - Open source home automation that puts local control and privacy first (https://www.home-assistant.io/)
Network Apps:
Reverse-proxy
- Traefik - Reverse Proxy (https://traefik.io/traefik/)
VPN
- Gluetun - VPN Client (https://github.com/qdm12/gluetun)
- WG-Easy - Connect to your home network from anywhere in the world! (https://github.com/wg-easy/wg-easy)
- Tailscale - Easier, closed source alternative to private OpenVPN/Wireguard server for access from anywhere in the world! (https://tailscale.com/)
Misc
- Flaresolverr - Proxy server to bypass Cloudflare protection in Prowlarr (https://github.com/FlareSolverr/FlareSolverr)
- DDclient (Dynamic DNS) - Keep your Domain updated at all times (Unnecessary if you are NOT exposing any of your service to public!) (https://github.com/ddclient/ddclient)
- Speedtest-tracker - Monitor your internet speed on a scheduled basis (https://github.com/alexjustesen/speedtest-tracker)
Media:
Movies and TV Apps:
- Jellyfin - Media Streaming Service (open-source, fork of Emby, recommended) (https://jellyfin.org/)
- Emby - Media Streaming Service (closed-source) (https://emby.media/)
- Plex - Media Streaming Service (closed-source) (https://www.plex.tv/)
- Jellyseer - Jellyfin Media Requests (https://github.com/Fallenbagel/jellyseerr)
- Overseerr - Plex Media Requests (https://overseerr.dev/)
- Ombi - Jellyfin/Plex/Emby Media Requests (https://github.com/Ombi-app/Ombi)
Music
- Airsonic - Music Server (https://airsonic.github.io/)
- Navidrome - Music Server (https://www.navidrome.org/)
Photos
- Immich - Self-hosted backup solution for photos and videos on mobile device (https://immich.app/)
- Photoprism - Self-hosted backup solution for photos and videos (https://www.photoprism.app/)
Books
- Calibre Library - Manage all your books in famous Calibre Library (https://hub.docker.com/r/linuxserver/calibre)
- Calibre web - Read your favorite Books (https://github.com/janeczku/calibre-web)
- Audiobookshelf - Listen to your favorite Audiobooks (https://www.audiobookshelf.org/)
Bookmarks
- Readeck - Nice Open Source alternative to Pocket (https://readeck.org/en/)
- Linkding - Very fancy bookmarks manager with support for tags (https://github.com/sissbruecker/linkding)
- Linkwarden - Very fancy bookmarks manager with support for tags (https://github.com/linkwarden/linkwarden)
Files
- Nextcloud - Popular Open Source Google Cloud alternative (https://nextcloud.com/)
- Stirling-PDF - Your locally hosted one-stop-shop for all your PDF needs (https://github.com/Frooodle/Stirling-PDF)
- Filebrowser - Nice WebUI for accessing and managing your files (https://filebrowser.org/)
- Samba Server - Samba can be use as a Network Attached Storage which can be mounted on your other devices like KODI, PC, Phones etc.
Misc
- Joplin-Server - Nice and very popular Notes-taking app (https://joplinapp.org/)
- FreshRSS - Nice RSS agregator (https://github.com/FreshRSS/FreshRSS/tree/edge/Docker#docker-compose)
- Mealie - A self-hosted recipe manager and meal planner (https://docs.mealie.io/)
- PrivateBin - A pastebin allows users to share plain text through the web for a certain period of time(https://github.com/gabrielesh/PrivateBin)
- Pingvinshare - Pingvin Share is self-hosted file sharing platform and an alternative for WeTransfer (https://github.com/stonith404/pingvin-share)
Starrs and Download Apps:
Starrs
- Radarr - Manage your Movies (https://radarr.video/)
- Sonarr - Manage your TV Shows (https://sonarr.tv/)
- Readarr - Manage your Books (https://readarr.com/)
- Lidarr - Manage your Music (https://lidarr.audio/)
- Bazarr - Manage Subtitles for you Media Collection (https://www.bazarr.media/)
Torrenting
- Prowlarr - Indexer aggregator for Sonarr and Radarr (https://github.com/Prowlarr/Prowlarr)
- qBittorrent - Does the actual download…(https://www.qbittorrent.org/)
Youtube
- Tubesync - Manage your favorite Youtube Channels (https://github.com/meeb/tubesync)
- Ytdl-sub - Automate downloading and metadata generation with YoutubeDL (https://github.com/jmbannon/ytdl-sub)
This is a beta version and over time, and I mean a long time, Im looking to improve on security and additional functionality when it comes to permissions and network stuff like traefik. Im a beginner at this kind of stuff so any contributions and suggestions are very welcome. Documentation also needs a lot of work which I simply dont have time to do. If you notice any typos in any of the files, please let me know!
If you are a complete noob and want to run this locally only, it might be better to skip Traefik reverse-proxy setup, however if you are familiar with it and have a public domain already, please use it and test it! Also, if you don’t have a Static Public IP address some stuff like VPN Servers usually work best if you have a public domain which can be regularly updated with Dynamic DNS client.
You need to have:If you haven’t installed them, don’t worry! The script will attempt to run both installations (it only works in Debian and Ubuntu!)
Before installing, make sure you have:- An installation location: The script is going to ask you for a install location, but it will default
to
/opt/fly-hi
. Just make sure your current user has permissions to write on the selected directory. - A media folder: This is the folder where all your files are going to be downloaded and categorized. If
you choose
/media/data
, the script is going to create the following folders:/media/data/Movies
: For your Movies/media/data/TV-Shows
: For your TV shows/media/data/Music
: For your Music/media/data/Photos
: For your Photos/media/data/Books
: For your Books/media/data/Podcasts
: For your Podcasts/media/data/Torrents
: For your Torrents- ~/media/data/Youtube
- A VPN service (optional but STRONGLY recommended): If you can, choose one from this list. The VPN I
always recommend is Mullvad because:
- They don’t require your email or information to create a new account.
- It’s simple to configure.
- They only have monthly subscriptions, so you can leave them whenever you want.
- You can pay with crypto.
$ git clone https://github.com/RogueGhost93/fly-hi
$ cd fly-hi
$ chmod +x install.sh wireguard-install.sh openvpn-install.sh docker.sh permissions.sh
$ ./install.sh
And follow the instructions. There are a few things that need to be done after containers are up and running but sometimes containers fail to start properly if your system already has some conflicting ports in use. In order to finalize the installation you will need to run the reinstall.sh script after you fix the port conflicts or some other errors preventing containers to start up.
When the script finishes installing without issues, just run:$ fly-hi Fly-Hi Media Usage: fly-hi [help|option] [compose-file] options: help displays this help message restart restarts Fly-Hi services stop stops all Fly-Hi services start starts Fly-Hi services update updates Fly-Hi services destroy destroy Fly-Hi services but preserve container data uninstall completely remove all containers and their data from the system ip checks if the VPN is working as expected ports shows all ports currently used and opened by docker containers links shows links to access your services links-all shows all links including non running services
This guy has a very nice documentation for setting up some of these apps, mostly media and starr services! Go to https://yams.media/config/ and follow the config instructions.
If you really wish to donate, first I would like to say thank you from the bottom of my heart! ❤️ Second, I would prefer you donate to any of the projects used in this script.They are the ones doing the real work, I just created a docker-compose files and a couple of bash scripts:
Just let them know Fly-Hi sent you there 😎
- [ ] Documentation Improvements.
- [ ] Security Improvements.
- [x] Integrate a way for easily adding your own custom docker-compose services.
- [ ] Support for Caddy (in testing).
- You 🫵, for being such an amazing human being, checking out my repo and (hopefully!) using it on your media server. Thank you! 🙇