this post was submitted on 14 Jan 2025
1 points (100.0% liked)

Self-Hosted Alternatives to Popular Services

213 readers
2 users here now

A place to share, discuss, discover, assist with, gain assistance for, and critique self-hosted alternatives to our favorite web apps, web...

founded 2 years ago
MODERATORS
 
This is an automated archive made by the Lemmit Bot.

The original was posted on /r/selfhosted by /u/Broken_browser on 2025-01-13 23:31:01+00:00.


I've gotten comfortable with my server stuff over the years where I understand a lot based on tinkering. I'm not an expert by any stretch, but I'm to the point where I'm running ~15 different containers on a NAS. This has been primarily for multimedia management (*arrs, gluetun, ytdl, pihole, etc.), but I've started exploring Home Assistant and now will install ESPhome in another container, and I'm beginning to wonder if keeping this all in one big file is the best approach. I couldn't really find a "best practices" & was wondering about a few things:

  • Should I stick with 1 file if I have some very different use cases for groups of the containers? Multimedia, Home Automation & Ad Blocking are my big 3 uses. All are run off my NAS in docker
  • If I split them up, is there a way to run one command to start them all? Sort of like a meta-compose file. Or would a bash script (or something similar) be more appropriate at that point?
  • Networking in docker is still a bit vague to me. I have a few specific ones set up to get pihole & gluetun working. It was a struggle for me and I'm hesitant to revisit it if I don't need to.
  • I've seen stacks & see things grouped in Container Station (I'm on a QNAP NAS) and wondering if there is a way to group similar containers in the same compose file.
  • Should I just suck it up, organize my 1 file and go about it that way?

Update Edit: Wow...I got a lot of really good feedback. I want to say thanks to all that responded with your set ups, some examples and some considerations. I tried to reply to most of you.

I feel the consensus is one file simply becomes too large to manage effectively, so splitting is really the best approach, but how you do that and what gets grouped together is a little more art than science. The "include:" call in a master compose.yaml seems like the most straightforward approach that I'm going to try either tonight or tomorrow.

FWIW, now that I'm home, I thought others may be curious what I'm running and how I'm going to split

  • Media: gluetun, prowlarr, radarr, sonarr, sabnzbd, ytld-sub, watchtower (I only have watchtower running on containers in this stack)
  • Mgmt: portainer
  • Network: pihole
  • Home Automation: homeassistant, zwave-js-ui, mosquitto, zigbee2mqtt, esphome
no comments (yet)
sorted by: hot top controversial new old
there doesn't seem to be anything here