JshKlsn's Blog

What I self-host and what I don't.

Self-hosting is not only fun and private, but sometimes the only solution to a problem. In this post I am going to go over what I currently self-host, why, and why I don't self-host certain things.

The setup

I currently self-host all of my services on two servers. My aging Unraid server, and my super aging Fedora server.

Why Unraid

I started my NAS journey with FreeNAS (Now TrueNAS), and while it was a fun introduction to self-hosting, the limitations of FreeNAS for my use case were too much, so I swapped over to running Unraid instead. The two main reasons I swapped were the lack of Docker/easy "community" apps, and the lack of being able to throw any size HDD into my server and have it work.

I haven't been keeping up with TrueNAS these days, but I do believe at least one of my gripes has been resolved, however, I really like Unraid, so I continue to stick with it.

Why Fedora

While a more stable LTS distro tends to be the preferred choice for many, the main reason I decided to use Fedora on my second server is simply because that's what I run on my desktop, and I like how seamless and easy it is to set stuff up on my second server since it's already what I am used to.

The services

The two servers have two very different jobs. The Unraid server hosts all of my files, self-hosted services, and anything important. The Fedora server hosts game servers.

The Unraid server

System specs

CPU: i7-6700K
RAM: 32 GB
Storage: 22.25TB (10TB removed and stored due to rising HDD prices)
GPU: None

Dawarich

I only recently started self-hosting this, but so far I have been very impressed and happy with it.

Dawarich is a self-hostable Google Timeline alternative with the option to import your Google Timeline data, as well as data from many other apps/services.

There is also a new family location sharing feature which is essentially a very basic, private, stripped down version of Life360 at this time. While I haven't actually used this feature yet, I am glad that it exists, and I am excited to try it out in the future.

Dawarich also includes a lot of really neat features that allow you to visualise your data over the years. From heat maps, distance travelled per month, countries visited, cities visited, weekly patterns, time of day distribution, top locations, consecutive days travelled, etc. It's quite amazing to look at your life all displayed like that.

Home Assistant

Home Assistant can be so insanely powerful. Imagine Google Assistant paired with IFTTT but on steroids. It's wild.

However, admittedly, I have never used Home Assistant to its full potential, and even more so I've stopped using it less and less over the years.

Once I moved again in 2022, I decided I was done with "smart" home stuff, and reverted to making my home dumb and boring again. Yes, this means I have been getting out of bed to turn my lights on and off for the last 4.5 years!

I was just exhausted and tired of things breaking in my smart home setup and requiring a bunch of tinkering and reconfiguring to get things working again. You know what is reliable at locking doors and flicking switches? My hands.

The one and only thing I use Home Assistant for these days is to turn on and off my basement office ceiling light. That's it. I have an entire Home Assistant docker setup for ONE light. And I love it.

While I think it would be cool to automate my house again, setup wild configurations, monitor my printer toner levels, etc, I know it will turn into some nightmare again quickly. In fact, for some reason, sometimes when I tap to turn on my lights in the Home Assistant app on my phone, it can be delayed by many seconds, and other times it is instant. Why? No idea. It's all local with zero cloud. That's already headache enough.

Immich

Other than basic NAS purposes, Immich is the main reason I even have my server. After Google Photos stopped their free unlimited full quality upload from Pixel phones, I reluctantly started paying for storage to continue uploading my videos and photos in full quality on Google Photos, but wanted to find a self-hosted solution. After trying many different solutions, Immich finally hit the scene, and even though it had some rough parts at the beginning, it quickly became more stable AND feature rich than Google Photos.

After Immich proved to me it was a stable and feature rich Google Photos replacement, I ditched Google Photos, cancelled my subscription, and "deleted" my data from their servers (lol, I know).

Backups are important. Even though I have Immich, Backblack B2, and other backup solutions, I still wanted something NOT self-hosted to backup my videos and photos, so I also have an Ente Photos subscription.

Media

A somewhat controversial option (according to Reddit) is my choice to use Emby as my media server.

I used to use Plex but switched shortly after due to Plex adding ads, removing plugin support, and other sketchy business practices. I found Emby, tried it, and immediately loved it. It felt like such a fresh breath of air after dealing with the enshittification of Plex, plus Emby had native support for download subtitles - the feature Plex removed (at the time).

Around the same time I switched to Emby, Jellyfin came out. While people have their reasons for not trusting Emby and preferring Jellyfin, I will just say, I have zero issues with Emby. I bought a lifetime license for an extremely affordable price years ago and it has been perfect for me ever since.

I have tried out Jellyfin many times, but the hard truth is, without funding, the project lacks any sort of polish. Basic features that Emby has are missing from Jellyfin. Application support for Jellyfin is pretty bad. Even the most wanted section on the official Jellyfin Feature Requests are all 5-7 years old, with zero progress. It's just the sad reality of FOSS. Meanwhile Emby gets updates very frequently with the developers taking their time to reply to posts in the official Emby Forums.

Along side Emby I run Prowlarr, Sonarr, and Radarr. It works okay, but truthfully, over the years, the ARR suite seems to struggle and error out a lot more. Sometimes it's just easier for me to manually fetch stuff.

RustDesk

I often remote into a few computers and servers in my house and I wanted a free, private, local, cross platform remote desktop solution. That's what RustDesk is.

I host the relay server on my Unraid server, download the apps on my devices, and remote control them all without any data ever leaving my own local network. Great for privacy, but also great for security.

Uptime Kuma

I use this to monitor my websites and game servers. If one goes offline, I get notified via Pushover, and can login to the server to fix the issue.

Websites

Web hosting, even the crappy shared hosting, is expensive for no reason. After paying $25 CAD per month for shared hosting that was EXTREMELY slow (wordpress took over 60 seconds between clicks on the dashboard) I decided to just self-host myself.

I run a couple wordpress instances and a few nginx containers to host all of my websites. They all get tunneled through Cloudflare Tunnel, and now I have $25 more dollars in my pocket every month and websites that load within milliseconds.

The Fedora server

System specs

CPU: i5-6600K
RAM: 16 GB
Storage: 120GB
GPU: GTX 1060 6GB

Game servers

This server is simply for hosting game servers.

Valheim, Minecraft, Terraria, Hytale, etc.

While these are easily hostable through the Unraid server, I host a lot of important things on the Unraid server, and I don't want any parts failing prematurely due to extra stress from people playing games. I also want to keep my Unraid server CPU 100% available for all the other more important self-hosted services.

What I don't self-host

If it's something that I absolutely need access to when I am not at home, I refuse to self-host those services. If my internet goes down, router fails, wireguard setup fails, UPS fails, and I cannot access the service anymore, that needs to be okay.

With all of the services I already listed above, all of those going down, even for long periods of time, would be okay. Things like Dawarich and Immich will retain local copies of the data on my phone if it cannot reach my server and will upload the data as soon as the server comes back up. I can manually turn on my lights, I don't need access to my media server, I don't need access to my game servers, I can physically control my computers, etc.

But what I can't loose access to is email or passwords. Even if email was not impossible to self-host these days, I still would avoid hosting it myself. While many password managers can store a local copy and sync with your server just as a backup, I still don't want to be on vacation, have my phone break, and be unable to sign in to any of my accounts because my server is unreachable at home to sync my passwords to my new phone.

Then there are a few services that simply aren't stable/feature rich enough for me to self-host at this time. Every Google Keep inspired note app has been very buggy and unusable, and every other note app, like Joplin, has been too different from what I am looking for.

Conclusion

Self-hosting is awesome and there are a lot of benefits to doing so. However, not everything is better in the self-hosting world, and you have to understand the risks of being in charged of your own data. This is why backups are important!

Hope you enjoyed this post!