Welcome to my home server development repository! Over the past 4-5 years, I’ve tested a wide variety of Docker containers for self-hosting and automation. This repo collects the containers I’ve found most useful, though some may be missing or not actively maintained. My goal is to organize each container into its own folder with a docker-compose.yml for easy setup and backup. Some configurations contain private information and will be refined before public release.
Each folder under docker-compose/ contains a service-specific Compose stack. This table tracks the current folder set so new additions are easy to spot and keep normalized.
| Service | Description |
|---|---|
| adguard | Network-wide DNS ad blocking and privacy filtering. I maintain a companion custom blocklist here that complements the lists in AdGuard. |
| airdcpp | Advanced Direct Connect client for file sharing. Old school protocol. Similar to soulseek. Not as good. |
| amule | Peer-to-peer client for the eDonkey and Kad networks. Similar to airdcpp and soulseek. Kind of sucks. |
| apprise | Unified notification gateway for many messaging services. |
| aria2 | Lightweight multi-protocol download utility. |
| audiobookshelf | Self-hosted audiobook and podcast server. Can auto download podcasts you subscribe to. |
| authelia | Authentication and authorization portal for protected apps. |
| azerothcore | World of Warcraft server emulator stack. |
| bar-assistant | Cocktail recipe and home bar management app. |
| bazarr | Subtitle manager for Sonarr and Radarr libraries. |
| beets | Music library organizer and metadata tagger. |
| btcpayserver | Self-hosted Bitcoin and cryptocurrency payment processor. |
| calibre | E-book library management application. Convert, organize/rename, and manage your e-book collection. |
| calibre-web | Web interface for browsing and serving a Calibre library. |
| chaptarr | Chapter metadata helper for media libraries. Think it's AI built, so haven't actually tested yet. |
| chd-converter | Tooling for converting PS2 disc images to CHD format. Useful for retro gaming. |
| code-server | VS Code served through a browser. With many addons built in for AI development. |
| comfyui | Node-based UI for Stable Diffusion and image generation workflows. Works with llama.cpp |
| comfyui-smartgallery | Gallery companion for browsing and organizing ComfyUI outputs. |
| dashy | Self-hosted dashboard for organizing service links. |
| ddclient | Dynamic DNS update client. I like to update duckdns and cloudflare with this. |
| deemix | Deezer music downloader. This tool is OP for any music downloader. |
| deluge | Lightweight BitTorrent client. Use to be nice, don't use anymore. qbit all the way. |
| diiis-diablo-3 | Diablo III server emulator stack. |
| dillinger | Browser-based Markdown editor. |
| doublecommander | Dual-pane file manager. |
| elasticsearch | Search and analytics engine. Using with tubearchivist and 1 other app |
| filebrowser | Web-based file manager. |
| filedrop | Simple browser-based file sharing service. |
| filegator | Self-hosted web file manager. |
| flaresolverr | Proxy helper for bypassing Cloudflare challenges. |
| foundryvtt | Virtual tabletop server for roleplaying games. |
| freshrss | Self-hosted RSS feed reader. |
| gamevault | Self-hosted game library manager. Not a fan of this one, but the idea I want to copy. |
| gameyfin | Game library and streaming server. Now this one is decent put together. |
| ghostfolio | Personal finance and portfolio tracker. |
| gitea | Self-hosted Git forge. My go to for self-hosted git repositories. Mirror everything to github. |
| gitea-mcp | MCP bridge for interacting with Gitea. using with vs code, hermes-agent, hermes-codex, and other coding tools. |
| glances | System monitoring dashboard. |
| gluetun | VPN client container for routing other services. Decent thought but think it's no longer supported really. |
| gmod | Garry's Mod dedicated server. |
| grafana | Metrics visualization and dashboarding platform. |
| grifter | Automation and scripting service. |
| headphones | Music downloader and library manager. |
| heimdall | Application dashboard for self-hosted services. |
| hermes-agent | Hermes automation agent service. |
| hermes-codex | Hermes/Codex automation workspace service. |
| homarr | Modern home server dashboard. |
| homeassistant | Home automation platform. |
| homebridge | HomeKit bridge for non-Apple smart devices. |
| immich | Self-hosted photo and video backup platform. Auto sync iphone/android photos like amazon drive. |
| iptv-org-epg | Electronic program guide tooling for IPTV sources. Think this was a waste of time. |
| it-tools | Collection of browser-based developer utilities. |
| jackett | Indexer proxy for torrent applications. Kind of outdated but comes in handy sometimes with different apps that are already integrated. |
| jdownloader | Download manager for file hosting services. Op download manager. |
| jellyfin | Open-source media server. Similar to plex but more customizable. |
| joplin | Note-taking and to-do application server. |
| jupyter | Interactive notebook environment for code and data. |
| karakeep | Self-hosted bookmark, note, and web clipping app. Takes full backups of web pages in case they go down. |
| kometa | Media library metadata and collection manager for plex media server. I use to think this was nice but it kind of hogs resources for long hours in large libraries. |
| lancommander | LAN party game library and event management. Want to redo this eventually. Good thought. |
| lazylibrarian | Book download and library manager. Not as good as calibre. |
| libation | Audiobook downloader and manager for audible. Removes DRM also. |
| lidarr | Music collection manager for Usenet and torrents. This finally came back! 1 of the best music collection managers out there. |
| llama.cpp | Local LLM inference server using llama.cpp. Run AI models locally. |
| mailcow | Self-hosted mail server suite. |
| mailserver | General-purpose Docker mail server. |
| mariadb | MariaDB relational database server. |
| mastodon | Federated social network server. |
| matomo | Self-hosted web analytics platform. Alternative to Google Analytics. |
| mcp-fetch | MCP server for fetching web resources. |
| mcp-git | MCP server for Git repository operations. |
| mealie | Recipe manager and meal planner. |
| mediacms | Open-source media content management system. |
| minecraft-paper_itzg | Minecraft Paper server using the itzg image. |
| minecraft-paperless-ng | Paperless NG document management stack. |
| mixpost | Self-hosted social media scheduling platform. |
| mkvtoolnix | Tools for Matroska media files. |
| mongodb | MongoDB document database. |
| mosquitto-eclipse | Eclipse Mosquitto MQTT broker. |
| mumble | Low-latency voice chat server. |
| musicbrainz | MusicBrainz database and music metadata stack. |
| n8n | Workflow automation platform. |
| navidrome | Self-hosted music streaming server. |
| netbootxyz | Network boot environment for OS installers and utilities. |
| netdata | Real-time infrastructure monitoring dashboard. |
| nginxproxymanager | GUI for managing Nginx reverse proxy hosts. |
| nicotineplus | Soulseek client for peer-to-peer media sharing. |
| node-red | Flow-based automation and IoT programming tool. |
| nostr-relay | Relay server for the Nostr protocol. |
| notifiarr | Notification and automation bridge for media servers. |
| nzbget | Usenet downloader. |
| ollama | Local large language model runtime. Must use ollama models only, no agentic services really. |
| ombi | Media request manager for Plex, Emby, and Jellyfin. |
| omni-tools | Collection of small self-hosted utility tools. |
| omnisave | Self-hosted save/archive service. |
| open-assistant | Open-source AI assistant stack. |
| open-notebook | Notebook-style workspace for AI notes and research. |
| open-webui | Web interface for Ollama and other LLM backends. |
| openbooks | Book search and download tool. |
| openhands | AI software development agent environment. |
| organizr | Unified web portal for self-hosted services. |
| paperless | Document management and OCR archive. |
| paperless-ng | Legacy Paperless NG document management stack. |
| phpmyadmin | Web administration interface for MySQL and MariaDB. |
| picard | MusicBrainz Picard music tagger. |
| pidgin | Multi-protocol chat client. |
| plex | Plex media server. Stream your media library. |
| plex-image-cleanup | Utility for cleaning Plex image cache data. |
| pms-docker | Plex Media Server Docker image setup. Official Docker image. Not the best really. |
| podgrab | Podcast downloader and archive manager. Used this before i found audiobookshelf. |
| portainer-be | Portainer Business Edition management stack. Forced me to move to business for some reason. |
| portainer-ce | Portainer Community Edition management stack. |
| postgres | PostgreSQL relational database server. |
| postiz | Social post scheduling and publishing platform. |
| prometheus | Metrics collection and alerting toolkit. |
| prowlarr | Indexer manager for media automation apps. |
| qbittorrent | qBittorrent BitTorrent client. The best one out there hands down. |
| radarr | Movie collection manager. |
| rainloop | Webmail client. |
| readarr | Book collection manager. No longer maintained. |
| readarr-audio | Audiobook collection manager. No longer maintained. |
| recyclarr | TRaSH guide sync tool for media managers. |
| registry | Private Docker image registry. |
| romm | ROM and retro game library manager. |
| romvault | ROM auditing and management tool. Haven't quite tested this but it looks promising. |
| sabnzbd | Usenet binary downloader. |
| searxng | Privacy-focused metasearch engine. |
| shoutrrr | Notification sender for many services. |
| sociaboard | Social media management platform. Paid bs, want to recreate this from scratch. |
| sonarr | TV series collection manager. |
| soulseek | Soulseek peer-to-peer music sharing client. Can also download tv, movies, and other media. |
| spotify-playlist-generator | Spotify playlist generation helper. |
| spotisub | Spotify playlist subscription manager. |
| sptnr | Spotify playlist and library helper. I've recently forked this here. |
| statping | Status page and service monitoring app. (IsItUp type site) |
| swag-letsencrypt | Secure Web Application Gateway (reverse proxy) with Let's Encrypt. Nginx based. Comes with lots of ready to go configurations. |
| swag-letsencrypt_duckdns | SWAG reverse proxy stack configured for DuckDNS. Not my active setup. |
| tautulli | Plex monitoring and analytics dashboard. Using with kometa also. |
| tdarr | Media transcoding automation. Remux containers or convert video formats. |
| tellytv | IPTV proxy for Plex. outdated compared to xteve. |
| traefik | Reverse proxy and load balancer. I don't actually use it, but it's a popular choice. |
| trilium | Hierarchical note-taking application. |
| tubearchivist | YouTube archive and media manager. Links to plex and jellyfin with plugins. |
| tvheadend | TV streaming server for DVB, ATSC, and IPTV. Very in-depth and feature-rich. |
| unpackerr | Archive extraction automation for arr media managers. |
| vocechat | Self-hosted chat platform. Similar to discord. |
| vscodium | Open-source build of VS Code served remotely. |
| watchtower | Automatic Docker container update monitor. |
| webgrabplus | Electronic program guide grabber. |
| wg-easy | Simple WireGuard VPN management UI. |
| whisper-webui | Web UI for Whisper speech-to-text. |
| wireguard | WireGuard VPN stack. |
| wireshark | Network protocol analyzer. |
| xbackbone | File sharing and image hosting platform. |
| xteve | IPTV proxy for Plex and Emby. |
| youtube-dl-material | Web UI for youtube-dl and yt-dlp downloads. |
| youtube-dl-server | REST API service for youtube-dl. |
| zap | OWASP ZAP web security testing proxy. |
- Docker installed on your server or local machine.
- Docker Compose (if using
docker-compose.ymlfiles). - Portainer (optional, for managing containers via a web UI).
-
Clone the Repository
git clone https://github.com/yourusername/home-server.git cd home-server -
Choose a Container
- Browse the folders listed above.
- Each folder typically contains a
docker-compose.ymlor instructions for setup.
-
Configure Environment Variables
- Some containers require environment variables or custom configuration files.
- Review the comments in each
docker-compose.ymlor.envfile within the container's folder for setup details. - Comments are marked with
#for easy reference.
-
Start a Container
cd <container-folder> docker-compose up -d
- Or use Portainer to deploy and manage containers/stacks through its web interface.
-
Access the Service
- Most services will be available at
http://localhost:<port>or via your server’s IP.
- Most services will be available at
- To update a running container:
docker-compose pull docker-compose up -d
- Or use Portainer's update features. Portainer > Stack > Editor > Update The Stack > Tick (Re-pull image and redeploy)
- Or enable automatic updates with Watchtower.
Deploy Watchtower to monitor and update your containers automatically:docker run -d --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower
- To stop a container:
docker-compose down
- Or stop containers from the Portainer dashboard.
- Backup your configuration files and persistent data folders regularly.
- Restore by copying your backups back into the appropriate folders before starting the containers.
For container-specific instructions, see the comments within each file.