this post was submitted on 03 Aug 2025
152 points (98.1% liked)

Selfhosted

50435 readers
532 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

What’s up, what’s down and what are you not sure about?

Let us know what you set up lately, what kind of problems you currently think about or are running into, what new device you added to your homelab or what interesting service or article you found.

Personally I'm finally reaping the fruits of my labour and enjoy my stable homelab without doing much. One node went down recently and the other took over until I restarted so I was not in a hurry to fix things. Enjoying family time and only running updates that aren't automated (yet). I'm about to dig a bit deeper into logging, probably setting up central log collection like Loki at some point, but not yet.

top 50 comments
sorted by: hot top controversial new old
[–] chris@mitra.northumbria.me 0 points 5 days ago

@tofu My system has been stable and I left it running for a while. However unfortunately it ran out of disk space. I really need to get round to putting images on a separate volume as these are the ones that run out, and unfortunately after reducing old images it was not working, probably database corruption due to no space. Anyway after a bit of a panic then running my restore script I'm running again.

#selfHosted #Mitra #fediverse

[–] malwieder@feddit.org 25 points 1 week ago (2 children)

Realized today that borgbackup failed for almost 2 months straight on one of my servers (was a simple case of a lock being stuck). Finally setup push notifications via Pushover to notify on success/fail.

[–] MangoPenguin@lemmy.blahaj.zone 4 points 1 week ago (3 children)

Healthchecks is incredibly nice for this kind of thing, it'll notify you if it doesn't receive a 'success' ping on whatever interval you specify.

I use it for all my Restic backups.

load more comments (3 replies)
[–] OhVenus_Baby@lemmy.ml 4 points 1 week ago

This is worth it. Had this happen on OS backup. Lost my data. Notifs should be default.

[–] phonics@lemmy.world 17 points 1 week ago (7 children)

I wanna get into it but man, the mountain of knowledge I need to even understand what people are talking about is hard to climb. I'm trying to just get some stuff running in docker and it fails to launch and I'm like... How?! Isn't that the whole point of docker lol. Baby steps I guess

[–] cRazi_man@europe.pub 9 points 1 week ago* (last edited 1 week ago) (1 children)

I've learnt it from scratch in my week off, spending 2 or 3 hours on it every night for a week (although this might be underselling it as I had become familiar with desktop Linux over the past year and had a superficial idea of Docker containers with my Synology NAS). But still it's not as big a deal as you think once you find some good resources. I'm going to comment about my setup after this in this thread.... Have a look.

Main resource that helped me was Marius Hosting and ChatGPT got me out of trouble when I got stuck by deciphering logs for me when things didn't work.

[–] phonics@lemmy.world 4 points 1 week ago

Thanks. Yeah I'm just trying to work at it slowly in my downtime instead of just watching YouTube all night.

[–] MysteriousSophon21@lemmy.world 7 points 1 week ago (1 children)

I felt exactly the same when i started - the learning curve is real! Try TrueCharts.org or linuxserver.io for reliable docker templates with good docs that actually work, saved me so much troubleshooting headache.

[–] phonics@lemmy.world 3 points 1 week ago

Thanks will do!

[–] mierdabird@lemmy.dbzer0.com 4 points 1 week ago (4 children)

Check out Cosmos, I struggled piecing things together but when I restarted from scratch with this as the base is has been SO much easier to get services working, while still being able to see how things work under the hood.

It's basically a docker manager with integrated reverse proxy and OpenID SSO capability, with optional VPN and storage management

load more comments (4 replies)
[–] rumba@lemmy.zip 3 points 1 week ago* (last edited 1 week ago)

It's messy. Dockers superpower: You can write a crazy ass python application that needs dozens of dependencies and weird software configured. You put it into a container, you can update and publish the container with a single script call. Other people can install that, set some variables and not have to install the dozens of other pieces of software. They also don't have to worry about updates.

But that's not to say you don't have to worry about networks, storage and ports.

Then the simplicity of the configuration of containers depends upon the person that made the container. Maybe they wanted to be very flexible and there are dozens of things you need to set. Maybe they didn't include the data store internally in that container and you need your own data store in another container.

load more comments (3 replies)
[–] Ugurcan@lemmy.world 15 points 1 week ago (1 children)

Found out Ghost 6.0 is out today and now it supports ActivityPub. It’s time to set up a new blog I’ll never write once more!

[–] tofu@lemmy.nocturnal.garden 3 points 1 week ago

Oh exciting, finally!

[–] kayzeekayzee@lemmy.blahaj.zone 14 points 1 week ago

Another glorious day of not having to worry about my nice and stable Debian server. It runs on an old Dell thin client I got on ebay, which isn't much, but it gets the job done.

[–] tuckerm@feddit.online 11 points 1 week ago

Realized last week that my fail2ban settings are too strict -- I get banned immediately if I visit my funkwhale (music server) domain without being logged in. In fact, I think much of my "downtime" might have actually just been me banning myself for 15 minutes now and then...

I was thinking about getting rid of Grafana, which is overkill for my server, and replacing it with Logdy this weekend, but didn't get around to it.

[–] Bluefruit@lemmy.world 9 points 1 week ago (7 children)

Getting ready to move from out of the woods and back to civilization with my partner.

Not looking forward to having neighbors above or below me but I'm very excited to have internet that doesnt fucking suck.

Once were moved and a bit more settled, I'm gonna start really digging into to selfhosting things. I have the hardware, a couple HP mini PCs that will run home assistant and probably a server for various docker things. Nextcloud and immich seem to be the things I've found i wanna use so far. I already have a NAS set up, but was having am issue with it not booting if a monitor isnt plugged in. I bought a dummy plug for it but haven't tried it out yet.

Will also be setting up an AI server for local LLM use. Hope to train one to fit my needs once I pull the trigger on 3060 12GB card but need to figure out what other parts I'll use. Might upgrade my main rig and use the parts from that, or maybe I'll buy a old dell and fix it up. Not sure yet.

Lots of ideas, so little time lol.

load more comments (7 replies)
[–] uranibaba@lemmy.world 9 points 1 week ago (2 children)

I installed a new server at home and went with NixOS. It looks super cool but it takes so much time to learn everything. The only thing keeping me from going back to Debian is how easy it was to permanently mount drives (and save a configuration for any future install or mishaps).

(I.e. mount, nixos-generate-config, nixos-rebuild switch and done!)

[–] Laser@feddit.org 3 points 1 week ago (2 children)

NixOS [...] learn everything

I don't think it's possible to learn everything for NixOS as a casual user / admin. It's massive. I was luckily able to sneak a NixOS project into work which gave me some paid time on the topic. But there's always room to learn more about it. Which is a good thing - by its nature, it's just more powerful than conventional distributions.

[–] uranibaba@lemmy.world 1 points 5 days ago (1 children)

I meant more figuratively. Finally managed to move my compose files to nix files thanks to compose2nix. One thing that throw me for a loop was that podman (or perhaps nix) creates a service named -. Compose2nix handles this accordingly but I had a few hours of head scratching until I figured that out.

[–] Laser@feddit.org 1 points 5 days ago

Good luck on the journey! What I meant is that over time, you'll realize that what you did was probably not the most elegant was to do something, at least that's my experience with my config. Like, I started with a flake with an explicit config for each machine (basically multiple nixosConfigurations) and then turned it into a lib with functions to turn a set of hosts from json into an attribute set (kind of a simple inventory done). My last efforts that are still ongoing (cough) are splitting my NixOS modules off into a separate flake using flake-parts.

I do understand you meant having the stuff that your need work, I just wanted to hint that the language is very powerful and as such, most configurations have room for improvement, as in learning to do things more efficient or do things that weren't possible before.

[–] OhVenus_Baby@lemmy.ml 3 points 1 week ago

More powerful = more mental burden and capacity used to know how to run and manage its unique syntax and structure.

Sincerely NIX user daily. Switching away from nix and off to fedora kinoite.

load more comments (1 replies)
[–] KingTootsie@programming.dev 6 points 1 week ago (1 children)

Recently set up my own nextcloud instance!

[–] KarnaSubarna@lemmy.ml 3 points 1 week ago (1 children)
load more comments (1 replies)
[–] linuxguy@lemmy.gregw.us 6 points 1 week ago (1 children)

I've been hosting immich for a long time and finally decided to make a website so people could sign up for paid monthly accounts and upload their stuff to the server that I'm going to run anyway. Maybe it'll make me beer money.

[–] KairuByte@lemmy.dbzer0.com 8 points 1 week ago* (last edited 1 week ago) (2 children)

Ngl this would skeeve me out. The chances of someone uploading CSAM while slim scare the fuck outta me.

[–] linuxguy@lemmy.gregw.us 5 points 1 week ago

Oh, wow, I was expecting a comment about privacy from the preview I got of your message and then it went on to talk about risk to the provider instead! Yes, you've definitely identified a risk and I hope to mitigate it with hopes, prayers, and as anonymous access logs as I can get while still identifying public, popular images.

[–] rumba@lemmy.zip 3 points 1 week ago (2 children)

Straight up CSAM would be pretty brazen. You could probably reduce the chances to zero by just saying that if there's any thing like that uploaded it will go straight to the police. You probably wouldn't need to invade anybody's privacy. The warning itself would set the bar.

I'm kind of surprised there's not an open source model out there capable of identifying it. Cloudflare has it as a free service if you use them, But I'm not seeing anything that you could just self host.

load more comments (2 replies)
[–] poVoq@slrpnk.net 5 points 1 week ago* (last edited 1 week ago) (4 children)

I looked into VyOS to replace my main firewall/IPS system (IPfire) with, as I would like to switch to running it in a VM, which is not recommended with IPfire. Seems pretty good so far with the new gratis semi-stable Stream releases.

And I set up Unified Push notifications with my Ejabberd server. Works great.

load more comments (4 replies)
[–] rumba@lemmy.zip 5 points 1 week ago

Started looking at Gemini-protocol over the weekend. (It's like a newer version of gopher) Now I'm looking for a problem to fit the tool.

I started writing a science fiction, choose your own adventure, short story to fit the platform But that'll take ages to finish.

I'm also eyeing a meshtastic client proxy. But you only get about 200 bytes per message so I'm not entirely sure it's worth it.

The last thing, it would be kind of cool is a Zim tie-in. It would be cool to have a canned Wikipedia that could be accessed via Gemini protocol.

[–] BakedCatboy@lemmy.ml 5 points 1 week ago* (last edited 1 week ago)

My homelab has been mostly on autopilot for a while. Synology 6 bay running most lighter weight docker stuff (arrstack, immich, etc) and an Intel nuc running heavy stuff (quicksync transcodes for Plex+jf, ollama). Both connected to digitalocean via WG for reverse proxy due to CGNAT.

I had my router SSD either die or get corrupted this past week, haven't looked much at the old SSD besides trying to extract the config off of it. I ended up just fresh installing opnsense because I didnt have any recent backups (my Synology and nuc back up to rsync.net, but I haven't gotten around to automated backups for my router since it's basically a plain config, and my cloud reverse proxy which is just a basic docker compose + small haproxy config). Luckily my homelab reaching out to the cloud reverse proxy means there's basically no important config on my router anymore, they just need DHCP and a connection.

Besides that the arrstack just chugs along on its own.

I recently figured out I can load jellyfin playback URLs into vrchat video players, either direct stream or through the transcoding pipeline as an m3u8 that live transcodes based on the url parameters you set. This is great because the way watch parties in VRChat works is that everyone in an instance loads the same URL pasted into media players and syncs the playback. That means you need to have a publicly accessible url (preferably with a token of some sort) that can be loaded by an arbitrary number of unique IP addresses simultaneously, which I don't think is doable with Plex.

I'm now working on a little web app to let me log into Jellyfin, search/browse media, and generate the links with arbitrary or pre-set transcode settings for easy copy/pasting into VRChat. The reason it's needed is that Jellyfin only provides the original file without transcoding when you use the "copy stream" option, so I believe the only way to get a transcoded stream url currently is to set the web interface to specific settings and grab the URL from the network. But that doesn't let you set arbitrary stuff like codecs and subtitle burn in and overriding what it thinks you support. So a simple app to construct the URL will make VRChat watch parties a lot easier.

[–] Lysergid@lemmy.ml 5 points 1 week ago

I recently started setting up home server on Raspberry Pi 5. Having issues with raid1. I have 2 nvme PCIe gen 4 SSDs. There was power outages while writing. Now second disk keeps randomly falling. Though, I’m not sure if that’s the reason because I don’t know what was raid status before outage, also disk passes checks. First time it degraded, it tried to recover and it failed. I removed that disk from raid, recreated partition run some test using nvme-cli. Disk looked healthy. I re-added disk, rebuild started and completed successfully. Then I’ve written around 500Gbs of data and it degraded again. At that point I took a break.

There are two things I’m yet to try:

  1. Change configs to use gen 2 PCI, currently it’s set to gen 3, but AFAIK pi 5 does not support gen 3 officially.
  2. Remove, format and write data to problematic disk directly. I hope this will give me an idea is this hardware issue or software issue

I’m frustrated and will appreciate any hints.

[–] tux0r@feddit.org 5 points 1 week ago

Let us know what you set up lately, what kind of problems you currently think about or are running into

I noticed that my link collector nears perfection (for my use case) - not much stuff required to be done lately. Which is a good thing.

[–] h0rnman@lemmy.dbzer0.com 5 points 1 week ago

Everything is just peachy this week except that I'm still trying to sort out why my I'm unable to access the internet when I'm connected to my unraid wireguard instance.

I am also finally ready to ditch my plex instance, too. Got some self-inflicted permissions issues sorted and it's been smooth sailing for long enough that I'm ready to make the switch

[–] ExperimentalGuy@programming.dev 4 points 1 week ago (1 children)

Does anyone know how to get a static IP for their server when their ISP doesn't allow it. I've found out how to use duckdns, but I want to set up my own DNS server from anywhere but I'm pretty sure it requires using a static IP.

[–] jane232@discuss.tchncs.de 4 points 1 week ago (6 children)

I use duckdns, and thus have a xyz.duckdns.org domain, that points to the dynamic ipv4 address of my server. I do not host my own DNS server, rather I rely on a cheap Website / Mail / domain bundle. There I can enter my duckdns domain as a CNAME DNS entry. Thus every DNS lookup that is not for the remote hosted Website will resolve the duckdns domain and finally end at my server.

I am not sure where you want to host your DNS server or also for what specific reason... If you don't have a domain, you kind of don't need to host a DNS, and every domain provider I had, also offered a DNS server with it.

load more comments (6 replies)
[–] non_burglar@lemmy.world 4 points 1 week ago* (last edited 1 week ago)

Finally retired proxmox (actually I just removed pve packages and repos). Left the nfs export on there and hardened the whole thing.

Now I'm slowly working to get all my installs into layered ansible playbooks. Fortunately, there exists an incus ansible module.

With separate, mounted, persistent data, it's getting very close to docker in easy deployment.

[–] truffle@lemmy.b0tt0m.xyz 3 points 1 week ago

Tried building a storage box out of a bunch of old parts, it looks alright and has all the parts I want. Doesn't boot though, that'll be a tomorrow thing :(

[–] bergetfew@sopuli.xyz 3 points 1 week ago (1 children)

I've set up Pangolin on my VPS and had no problems accessing docker services on my homelab remotely. However, I don't know how I am supposed to SSH or SFTP to my homelab. Will I connect to my VPS instead? Would I need to break Pangolin or expose a vulnerability to do so?

Honestly I am in need of a proper networking tutorial at this point.

[–] e8d79@discuss.tchncs.de 3 points 1 week ago (3 children)

According to the Pangolin docs it supports raw TCP and UDP connections.

For SSH you can also try to use the VPS as a jump host like this:

$ ssh user@vpn-homelab-ip -J user@vps-ip
load more comments (3 replies)
[–] confusedpuppy@lemmy.dbzer0.com 3 points 1 week ago (1 children)

I finished setting up my personal computer with Sway on Alpine so now I can't procrastinate anymore on getting TLS working with Caddy for my RPi 5.

I decided to ditch Cloudflare since using that service makes me feel uncomfortable. TLS is a bit of a pain because I am using an uncommon port so I need to do a DNS challenge. I still haven't been able to get it working with DeSec.io but I hope maybe sometime this week.

I might look into using a tunnel service in the future but if I can figure this out, I'll at least be able to adapt to changes in the future if I need to deal with any changing situations.

When I figure that out, I'll look into Gemeni protocol and host something there. I don't want anything big, just a little space of my own in the corner of the internet. Maybe I'll look into hosting an irc server for a small group of people too.

load more comments (1 replies)
[–] cRazi_man@europe.pub 3 points 1 week ago* (last edited 1 week ago) (3 children)

I'll paste a comment I made about this recently (with updates). My question is: what is a good solution to keep a music folder backed up (lives on my server NVME partitioned boot drive, but want it backed up automatically to my NAS HDD)? Also: how can I back up my Docker setup in case I screw it up and need to set it all up again?


I used just a Synology NAS with Docker containers to begin with but outgrew that. Now I have a mini PC with a 12th Gen i5 (picked up cheap on eBay) for computing and the Synology NAS is just a NAS.

Docker containers:

Glutun (VPN), qBittorrent, media managers (sonarr, radarr, prowlarr, flaresolverr), Jellyfin (video streaming), Paperless NGX (document upload), Immich (photo upload), watchtower (auto update Docker containers), Plex (because my wife+friends aren't used to Jellyfin yet and it takes a while to transition them to unfamiliar technology), Actual (budgeting), Syncthing (file sync, update: removed this, not needed, actually need a backup solution), Element server (chat server just for myself, I make channels to cross-share snippets of text/links/images to myself, accessible on any device).

Still need to set up Lidarr and Beet for my music management (update: tried these last night and don't really need them). Also need to find a good exercise logger, set up Guacamole remote access interface (update: done, happy with this), learn to use Dockage to replace Portainer (done, happy with this), set up an RSS docker app (update: done, still messing around with FreshRSS) and audio bookshelf for podcasts and audiobooks. Haven't got the guts to approach Home Assisstant yet.

I stopped looking for a notes app and use Joplin to sync with my Mailbox.org account, but I might look for a Docker solution for notes.

NoMachine runs on my server PC for remote desktop. The server PC runs Debian with KDE (because I'm familiar with setting up what I need in KDE, which is the most superior of all desktop environments).

Synology handles making my apps accessible externally (from Synology.me reverse proxy addresses).

I used to use the Marius Hosting site to set up Synology Docker containers. Now I just copy his YAML data and edit it for my server. So I still use those guides.

I've written a noob guide notes for myself to set this all up again in case I destroy it somehow (already happened once). Really enjoyed using my week off to learn all this.

[–] Brkdncr@lemmy.world 5 points 1 week ago (1 children)

Tons of services used daily.

Piled on the ground under a board.

[–] cRazi_man@europe.pub 3 points 1 week ago* (last edited 1 week ago) (1 children)

Like many things in my life, this remains 75% complete "good enough". This lives behind a huge backboard behind my TV. Said backboard is slanting because it is leaning against the wall and I still haven't mounted it to the wall properly. You can even see some glass panels leaning against the wall, those are some shelves I've been meaning to put in...... For the past 6 years.

The router, fibre internet entry point and LAN connection in the wall (to upstairs) are all behind d the TV there...... So everything is just dumped there.

load more comments (1 replies)
load more comments (2 replies)
[–] golden_zealot@lemmy.ml 3 points 1 week ago

Got my HPE DL380 G9 networked and configured with hardware RAID 0 and Debian running under ProxMox for a test run (need more disks for RAID 5). Thing had an advanced iLo license intact from the previous owner.

Deployed a docker container of linkwarden to it to try out and it seems pretty nice.

[–] bigoljim@lemmy.ml 3 points 1 week ago

Have had Opnsense router, Ubiquiti switch, and shitty ASUS Router in AP mode for years. Got new Ubiquiti APs to improve wifi speed and coverage.

Can't get VLANS to work to save soul. Feels bad.

[–] cosmicrose@lemmy.blahaj.zone 3 points 1 week ago

I made some more tweaks to my Renovate bot which runs on a Woodpecker CI instance on my own hardware. Now it merges green PRs automatically. And I have it running every hour so all my software projects stay up-to-date and it responds quickly when I request a rebase.

I’ve also been cleaning up my Home Assistant automations and devices and trying to think up some useful things I can do for myself in an apartment where I can’t replace switches or the thermostat.

load more comments
view more: next ›