Hey everyone! I’m sort of still green for selfhosting, but I wanted to share my setup so far:
The following services are selfhosted in docker
- Audiomuse (smart music tagging, mood based and all that)
- Navidrome for music hosting
- Jellyfin for TV shows (not a lot) and Films (not a lot again, but steadily increasing)
- Radicale for serving contacts/TODOs/calendar
- SFTPGo to act as my drive
- Kavita for ebooks and manga (I have tons of both)
- Glance for homepage
- forgejo for git forge hosting
The system specs are kind of visible in the homepage, so I won’t spell them out here again. Mostly an old optiplex running arch, though I want to change it to nixos later on.
System tools:
- nushell for shell
- calibre for ebook management and tagging + fanficfare plugin to download fanfictions
- Caddy for reverse proxy (so I don’t have to remember ports)
- netbird for VPN (also because it allows me to set wildcard DNS resolution for nodes, so I don’t have to set up a dedicated pi-hole or adguard)
- Handbrake and ffmpeg for processing videos and such
- beets for tagging music
- a sysinfo script to generate system information for glance to consume
- Probably other things too, I’m forgetting
Everything is accessible only via netbird, and external inbound connections are firewalled off
Apart from that, I eventually plan on adding the following as well:
- Immich for photo hosting
- Vaultwarden for passwords
- Gollum (still debating on alternatives) for a webUI for my notes
- Paperless-NGX
I’m still thinking on more that I can add. Note that whatever I add should not need an inbound connection/stable IP address, since I don’t intend to expose the server to the public. Any suggestions/tips? Thanks!
UPDATE: Forgot to add, I’d probably add homebox too, for inventory management 😅
UPDATE 2: I’m silly, I forgot that I’m also looking into self-hosted RSS feed readers 😆
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters DNS Domain Name Service/System Git Popular version control system, primarily for code RPi Raspberry Pi brand of SBC SBC Single-Board Computer SFTP Secure File Transfer Protocol for encrypted file transfer, over SSH SSH Secure Shell for remote terminal access
[Thread #57 for this comm, first seen 20th Jul 2026, 18:10] [FAQ] [Full list] [Contact] [Source code]
I don’t see many people recommend this and not sure why but I’d recommend looking at Arcanedocker containers management. It’s got a nice UI and very easy to use!
Interesting. I’ve heard of Arcane, but never dabbled. From the demo, it looks pretty tight. I see it also gives you ‘vulnerabilities’ kind of like Maintenant, but built in. Nice!
Oh yeah it has a lot of nice features and the vulnerabilities it pretty in-depth, once it done it provides recommendations for fixing the vulnerabilities as well.
I currently have mine configured to check for updates, update and prune automagically then provide a report of what’s been done to a private discord server
Wow! So it’s Maintenant, watchtower, Portainer, and a few other apps rolled into one. That’s pretty awesome. I’m using Portainer and have been for a long while. It’s good for what it does, and I know how to drive that bus. I’ll definitely have to check out Arcane tho. Especially if it replaces several apps that I don’t need to run, and make room for others. LOL
Thanks for sharing.
No problem! Once I’d trialed it for a week or so I dropped portainer completely. Arcane has been a pleasure for me to use and was relatively simple to set up and start using
That looks interesting! Although my current setup is simple, so I’d like to hear from you what arcane simplifies from experience
Depending on what you want out of Arcane, like the user above said it condenses the need for 3 or 4 separate container into 1 container all managed within the same gui. For me the simplicity of having it auto update my containers, restarting them if they become unhealthy, pruning unused docker volumes, unused networks, old container images has made container management a breeze
If you have any more specific questions outside of this or in general I’m happy to answer them 🙂
Awesome! I have a very similar setup to you. I recommend installing pi-hole regardless and putting at least Hagezi’s normal block list on it, just for a sane web browsing experience.
Home Assistant is also really good, because it includes a bunch of stuff that you probably wouldn’t first think of. For instance, I’m using its API to request the indoor temperature from my home thermostat and the outdoor temperature from a weather module that it has built in, and I’ve programmed it to let me know when it’s too hot to walk the dog, and when to open/close the windows in the house to keep it as cool as possible in this heatwave.
I’m using LeafWiki for home documentation. A list of things I intend to try hosting, my backup strategy which I’m bound to otherwise forget. I’m thinking about putting all of our meals on there so that we when we get tired of a particular meal for a while, we can return to it when we’re at a loose end with the shopping.
Leafwiki website looks like ai slop
I’m checking out LeafWiki. Thanks for that.
Oh wow! I didn’t know home-assistant can work in a closed network, but now it makes sense
What does leafwiki do exactly?
I also read your backup strategy below and that seems pretty interesting. My strategy differs. Have nothing in the volumes, unless it’s like docs or whatever lol. I do think that’ll change with things like Paperless, since I’d want to persist and carry over the tagging strategy or whatever.
It just allows you to quickly make pages of content, like Wikipedia. It has a tree navigation and search. Here’s a demo site: https://demo.leafwiki.com/home
Ah, it seems that gollum would cover this, although I’d keep an eye on this as well.
How do you do backups and what’s the codeberg service?
I keep my container volumes in sub-directory of that of the docker compose file and tar them up and put them somewhere safe. I spent ages trying to figure out how to back up a container, because I thought that the state of a database was in memory, which I suppose it is, but when you stop it, it’s just a bunch of files like everything else, so I elected to keep it simple. I’ve been thinking of creating a cron job to do it routinely. I’m not sure what you mean regarding the codeberg question.
You could look into:
- SearXNG (aggregated search engine)
- Mealie (recipe collection & meal planning)
- CryptPad (replaces Google Drive)
- oPodSync (gPodder-compatible podcast syncing server)
- Sure or Actual (personal finance tracking)
- Diun or Watchtower (container update tracker; IIRC Watchtower auto-updates by default, Diun does not)
Thanks for posting, I gotta add the random facts to my Glance dashboard now.
I’ve heard good things about SearXNG. I’ll be sure to check that out.
I don’t see the need for cryptpad, since SFTPGo serves my purposes.
I’d look into mealie, since I’m going to live alone and need to figure my own meals out. Perhaps Sure/Actual too!
I am still looking at container management, right now I just manually update/backup everything.
Yeah, no worries if they’re not all useful to you. I still do the actual updates manually, Diun just tells me when to do them so I don’t have to routinely check project pages or follow an RSS feed.
What does oPodSync do exactly?
So a few podcast apps support a service called gPodder, which provides cross-device syncing of subscriptions and episode progress, but the gPodder servers are slow and often time out, rendering the service useless.
oPodSync is essentially a drop-in replacement for gPodder. My use case is that I listen to podcasts on both my desktop and my phone, and I want episodes to be seamlessly accessible on both devices without having to manually do anything.
It’s very resource-light, so if you have any interest in podcasts at all it’s another piece of cool tech that gives you more control over your data. I used to use Player.FM, which is still a cool app, but I was paying them $13/year for a small handful of premium features I didn’t really think were worth that much.
Couple things. Firstly watchtower is no longer maintained. An alternative is what’s up docker(WUD). It mostly functions the same but with a little more setup. I found this to be a near drop in replacement for me.
Secondly as someone who’s consistently had a hard time with searxng, I would recommend degoog instead for aggregate search. It just feels so much more modern and usable. It’s immensely more simple to setup as well since configuration is mostly done in the interface instead of some several hundred line config file.
Ah, cool. Thanks for the additional info. I never kept up with Watchtower since Diun fit my needs. I’ll check out Degoog; I don’t mind several hundred line config files though, I usually go through all of the config/env settings prior to setting up a new service.
What do you have against pihole? If it is you want to see ads you can turn off the adblocking and see ads but you can use it for internal dns naming for services with Caddy as I find it more reliable than just Caddy across multiple systems.
I don’t have anything against Pihole. It’s wonderful! I don’t have additional resources (like RPi), and I want to keep everything on one system, and my usecase is simple enough that netbird covers it, and I don’t know if I should pass all my DNS requests on both my phone and PC through my server (because iirc it’s finally the pihole system that’ll make the request?)
Also I hate ads lol
That’s a respectable server set up you got going there. Kudos!
Thanks! Still remember the good old days, when I didn’t know how to set up docker compose properly (I don’t think I still do 🤣)
But I’ve certainly come a long way, and it’s really fun! Also, I’ve seen you post here often! Cheers!
(I don’t think I still do 🤣)
Learning is one of the facets of selfhosting that I genuinely get a kick out of, and as you say, it is much fun. It’s a very useful, very practical, and entertaining hobby for me. My servers are like a huge playground. I’m still that kid running out to the mailbox to get the latest edition of Byte magazine.
Also, I’ve seen you post here often!
Much to chagrin of some I am afraid. LOL I am an expert at nothing, but if I may be of service in any way, please do inquire. There are a lot of people here willing to help.
How are you accessing all of it? Custom URLs? Reverse proxy?
Forgejo is for private projects only? Are you syncing them with some other git providers? If now how are you baking it up?
Vaultwarden for passwords
This one was the most tricky for me due to HTTPS but I finally got it working on desktop and android.
I access it using the hostname of the device (since netbird and tailscale both let you do that)
I also open docker ports only for localhost, and use caddy to reverse proxy subdomains to the respective localhost ports. Less port clutter from outside this way. Ofcourse things like SFTPGo’s SFTP port is an exception
Also, vaultwarden requires HTTPS?? Ah drat, that’s not good :/ I don’t have experience with that.
Also, vaultwarden requires HTTPS?? Ah drat, that’s not good :/ I don’t have experience with that.
Yes, the clients work only over HTTPS. Caddy can handle that:
vaultwarden.cosmos.internal { tls /opt/caddy/certificate.crt /opt/caddy/private.key handle /* { reverse_proxy http://localhost:8081/ } }The certs need to be generated for this specific domain:
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 36500 -nodes -subj "/C=XX/ST=StateName/L=CityName/O=CompanyName/OU=CompanySectionName/CN=cosmos.internal"Some more details are here: https://bitwarden.com/help/certificates/ under “Using a self-signed Certificate”
Ah, as long as self-signed certs are an option, I can work with that :)



