this post was submitted on 11 May 2025
334 points (99.4% liked)

Selfhosted

46671 readers
290 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
 

Thanks to this community I've learned and I'm feeling inspired. I've loved having an NAS for the last few years, but it's woefully under powered for what I'm using it for these days.

So I've ordered some basic PC parts, gonna build a basic setup using an old CPU I got lying about and try the NAS OS I saw talked about on here recently.

TrueNAS looks like a good option with only slight fears it'll go down the well known path to the dark side like so many free options before.

In any event, I'm looking forward to adding Nextcloud and Jellyfin, to trying out Docker and generally having more control over things.

Thanks again to you all for informing and inspiring.

I'll be back if I get questions!

top 50 comments
sorted by: hot top controversial new old
[–] muusemuuse@lemm.ee 37 points 1 week ago* (last edited 1 week ago) (4 children)

I quickly got pissed at synology and QNAP and just started making my own shit. Now when anything fails it’s my own damn fault and I can actually fix it. This sounds bad but it’s actually a much better experience. I learn a lot and have fun. I’m the guy who made all those G4 cube retrofit kits on Thingiverse. It’s been a great distraction for me over the years.

On the subject of containers, learn podman. That’s where everybody seems to be migrating to.

[–] essell@lemmy.world 8 points 1 week ago (1 children)

Thank you, I'll add podman to the list of things to checkout. Feels good to know I'll get to set this up however I want

[–] Colloidal@programming.dev 3 points 1 week ago

There's also Incus, but if you'll be using your TrueNAS box to host the containers, I suggest you stick to Docker as it's the default. If you're building a second container box, Proxmox, Docker, Podman, and Incus are your best bets. Choose what fits your expertise and needs best.

[–] fmstrat@lemmy.nowsci.com 3 points 1 week ago

Yup, my servers just run bare Debian and ZFS and I have backup scripts that parse the docker compose files for how often to run and keep backups.

[–] Xanza@lemm.ee 2 points 1 week ago* (last edited 1 week ago)

I quickly got pissed at synology and QNAP and just started making my own shit.

It sucks, because I really like Synology's ecosystem--but I don't buy vendor lock-in devices. Luckly we have arc that lets you use SynologyOS on bare metal. If you get get it working with your hardware it's badass.

Why they don't sell home server licenses for SynologyOS is beyond my understanding. It's a really nice little OS and is specifically designed for NAS.

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

Do you have a recommendation on how to start migrating from docker compose to podman pod or podman kube? And do you know about a web ui for podman (similar to dockge or komodo)?

[–] muusemuuse@lemm.ee 1 points 1 week ago (2 children)

I haven’t learned about kubes yet. I do use and love quadlets though.

load more comments (2 replies)
[–] Trimatrix@lemmy.world 17 points 1 week ago (5 children)

When you end up having a mini homelab look into komo.do for container orchestration over the overkill options like kubernetes or portainer

[–] metaStatic@kbin.earth 16 points 1 week ago

anything worth doing is worth overdoing

[–] TunaLobster@lemmy.world 6 points 1 week ago (1 children)

I prefer dockge for putting all of my compositions in one place.

[–] wreckedcarzz@lemmy.world 2 points 1 week ago (1 children)

And being able to manage multiple hosts in one UI is the absolute tits. There are a few features I miss from portainer but none strong enough to pull me back. And no bs SaaS licensing and costs...

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

Portainer is way too bloated for personal use. I liked it initially, but the licensing shit was, well, shit, and the way it managed compose files was garbage. Dockge is way better for my use case, since it works alongside Docker, instead of fucking off to do its own thing.

[–] Badabinski@kbin.earth 3 points 1 week ago

But k3s so niiiice.

[–] wreckedcarzz@lemmy.world 2 points 1 week ago (2 children)

So what's the threshold for 'mini' vs 'you need to stop'...? Number of hosts, or number of containers, or number of public services, or...

[–] Trimatrix@lemmy.world 2 points 1 week ago

Not sure, currently have 8 nodes and 40 apps running

[–] bss03@infosec.pub 1 points 1 week ago

When you lose a system. It responds to ping; all services are up, but you can't find the damn thing.

So, not a number so much as a limit to your organizational skill+effort.

load more comments (1 replies)
[–] Kuinox@lemmy.world 14 points 1 week ago (1 children)

Consider that a new power efficient CPU may be cheaper by consuming less electricity over a few years!

[–] essell@lemmy.world 3 points 1 week ago (3 children)

I hadn't considered that! Thank you.

I'm hoping the OS, as it's designed for this, is going to be helpful in getting the right balance with power usage.

[–] Xanza@lemm.ee 2 points 1 week ago* (last edited 1 week ago)

To put this into perspective for you, if your NAS sits at idle for 90% of the time (probably true) and an older CPU is 50w (kinda high, but maybe) and a newer CPU is 15w, over an entire year it will save you around 305.76 kWh. Average price per kWh in the USA is 12.89¢. So over a year a new CPU can reasonably save you around $39.41. So it's not nothing, but it's nothing crazy, but lower idle wattage = lower temp = components last longer, which is the real savings.

If an older CPU is only gonna last you 5 years, when a new might last 10, you're going to save almost $400 in energy and generally a CPU today is going to be cheaper than a CPU in 10 years (probably). So it makes sense to spend an extra $200 on a newer CPU and still net a $200 savings over 10 years vs the older CPU.

[–] Kuinox@lemmy.world 2 points 1 week ago* (last edited 1 week ago)

You can calculate it !
Take your power usage and compute the cost over a year.
I will soon add a SSD because i finally moved from a RAID 1 to RAID 5 (so more HDDs), it consume more electricity.
I can measure how much power it draw because the server is on a smart plug. I calculated an additional 20-30€ a year of electricity, adding a SSD for read/write cache would allow the HDDs to stop spinning, make things faster and will be cost effective over a few years.

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

This is why I'm using a refurbished mini PC as my home server. Lower wattage for constant uptime at home. Also very quiet.

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

Bingo! I've got 4 mini-PCs (does a 2014 Mac mini count?), and one SFF. The average power draw of this cluster is barely ~90W.

Screenshot from my HASS dashboard:

collapsed inline media

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

Yeah with that win10 EOL there's loads of refurbs out there for cheap.

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

Only one of them is compatible with Windows 11 lmao - HP Elite G4 mini with an i7-8700T. Everything else is 7th gen or 4th gen.

[–] SidewaysHighways@lemmy.world 10 points 1 week ago* (last edited 1 week ago) (1 children)

i like TrueNas! and after trying out True Nas on bare metal for a year or two, now I run it as a VM under Proxmox.

so awesome

[–] essell@lemmy.world 3 points 1 week ago* (last edited 1 week ago) (1 children)

You're the second person to suggest that approach. I'll check it out before I do setup next week. Thanks!

[–] Xanza@lemm.ee 3 points 1 week ago

I've tried TrueNAS, Rockstor, Openfiler (iSCSI), EasyNAS, and a few others and TrueNAS is easily the favorite. Running it alongside Proxmox is ideal if your server is beefy enough.

[–] nixx@lemmy.ca 5 points 1 week ago (1 children)

If you are concerned about TruNAS, go look at Xigmanas. This is the original FreeNAS project before iX acquired the name.

[–] essell@lemmy.world 1 points 1 week ago

Much appreciated!

[–] Vendetta9076@sh.itjust.works 4 points 1 week ago* (last edited 1 week ago) (1 children)

Welcome! I personally run proxmox as my host os then virtualize a truenas core VM and have my docker setup in another lxc. A bit more complex than just straight up truenas but its saves me before. I'd recommend looking into it

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

Thanks! That sounds like one of those things that's a hassle to setup and appreciated in the long run

[–] Vendetta9076@sh.itjust.works 1 points 1 week ago (1 children)

Its honestly not too bad as a starting point but its definitely harder than just installing truenas. Reason I'd suggest it is that it gives you more flexibility in the long term.

If you want less complexity, something like yunohost or CasaOS can be great too

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

I have so many things to try and discover!

Thanks, I've made a note of your suggestions, 👍

[–] Vendetta9076@sh.itjust.works 1 points 1 week ago (1 children)

Its certainly a rabbit hole. If you ever need help shoot me a message. I'm happy to chat about this stuff.

[–] essell@lemmy.world 1 points 1 week ago

You're a good soul!

[–] _____@lemm.ee 2 points 1 week ago (5 children)

What's the self hosted guide to security when opening up ports to the public ?

[–] dan@upvote.au 10 points 1 week ago* (last edited 1 week ago) (3 children)

Don't. Use a VPN like Tailscale or Wireguard. Tailscale uses the Wireguard protocol but it's very easy to configure, and will automatically set up a peer-to-peer mesh network for you (each node on the VPN can reach any other node, without having to route through a central server).

The only things that should be exposed publicly are things that absolutely need to be - for example, parts of Home Assistant need to be publicly exposed if you use the Google Assistant or Alexa integrations, since Google and Amazon need to be able to reach it.

[–] randint@lemmy.frozeninferno.xyz 1 points 1 week ago (1 children)

Offtopic, but do you think it's better to use HTTPS for non-public web services that must be accessed through ssh?

[–] dan@upvote.au 2 points 1 week ago* (last edited 1 week ago) (1 children)

I usually use HTTPS, because a lot of web features only work over HTTPS.

You can use Let's Encrypt DNS challenges to get real TLS certificates for internal hosts, instead of having to use your own CA or self-signed certificates.

Thank you! I'll try that out.

load more comments (2 replies)
[–] yaroto98@lemmy.org 4 points 1 week ago

Basically not to. Open one for a VPN like Wireguard to accept incoming connections, and that's it. Use the VPN to connect to your home network and access your services that way.

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

Use tailscale for host nodes, use tailscale docker container in a compose stack with an app that you sidecar to. That way that app is on your tailnet as if it is its own computer. Use tailscale serve for reverse proxying support of the apps. Then, setup a vps node (I use linodes $5 node) with tailscale and configure that to be your DMZ into your tailnet.

For DMZ, use Caddy, UFW, and fail2ban. Also take advantage of ACLs in the Tailscale admin console to only have the VPS able to route traffic to specific apps you want to expose. My current project is to work in Authelia into this setup so a user logs into one exposed app and is able to traverse to other exposed apps through header / token authentication.

Oh also, segment the tailnet using different authentication keys. Each host node should have its own key, all the apps on a host node should have a shared key, and all public facing clients should have a common shared key. That way in case of compromise you can revoke the affected keys without bringing down your network.

[–] crawancon@lemm.ee 2 points 1 week ago

deploy to dmz

filtered by fw

host based isolation

zerotrust

etc

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

Expect to be ostracised here but if your drives are "junk" (some have SMR), I got better parity performance with Windows Storage Spaces (WSS) than with Unraid. Recoverability and compatibility with old junk hardware was very good too, whereas the bits I had lying around gave me Linux driver conflicts. Trying to install ZFS on Linux gave me a headache, and I then realised I couldn't expand the array easily when I found other cheap crappy drives to add. WSS doesn't care, it just keeps trucking.

As for a licence, the old "upgrade from the windows 7 enterprise key that got leaked" trick did it for me. Never paid for it.

I found that I needed to spend more on components with better driver support to have a working NAS on Linux. Windows isn't open source, but for me it was the cheapest total cost option, and you can still run your containers in it.

I reckon maybe performance is worse on write for WSS? I paid for a PrimoCache licence to fix that though, and now my SSD gets used for initial writes and slowly spools over to the array as the array is able to calculate parity and write with my 10 year old CPU.

load more comments (2 replies)
[–] ohshit604@sh.itjust.works 2 points 1 week ago* (last edited 1 week ago)

Late to the party but I decided to pickup a 13th gen ASUS NUC with an i7 over a prebuilt NAS, bought a couple external hard-disk bays setup Proxmox running a headless Debian 12 VM and almost everything runs great however, mistake was using Debian 12 because the Linux kernel is pretty far out of date and does not support the CPU properly.

[–] muusemuuse@lemm.ee 1 points 1 week ago (4 children)

Open source is certainly in a great position now but there are some things it’s just not doing that I’m frankly too dumb to do myself. For example, there’s no open source answer to appleTV. The closest thing we have is androidTV and it’s just awful.

I would love to see a TV-centric desktop environment you could run on top of any typical Linux distro. Something implementing live tiles like old windows phone had, a web app that you could access with a smartphone and use to control it like a remote, single-task interface rather than a task-juggling interface we have on normal DEs, sigh. I have a vision I cannot possibly create because that would take incredible skill that I just don’t have to make and I can’t just whine that nobody is making it for me.

Meanwhile, all my Apple stuff works together in a way I generally approve of.

I need to transition away from this at some point but there aren’t always open source solutions for this.

[–] francois@sh.itjust.works 2 points 1 week ago

As a TV centric distro, there is libreelec https://libreelec.tv/ You can use it to stream media from jellyfin, plex or other streaming platforms with plugins

It runs kodi that you can also use in other distros as a package

Kodi supports hdmi-cec, which allows to use your TV remote to control kodi, the hardware needs to be compatible too though (raspberry pis are compatible) There is also a mobile app, Kore, to control kodi on local network

The UX may not be as slick as androidtv/appletv but it is customizable

[–] meltedcheese@c.im 1 points 1 week ago

@muusemuuse @essell Maybe this? There seem to be a number of possibilities. Let us know what you find out. #HomeAutomation #Maker #SelfHost

load more comments (2 replies)
load more comments
view more: next ›