this post was submitted on 28 Nov 2023
5 points (100.0% liked)

Self-Hosted Main

21 readers
1 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.

For Example

We welcome posts that include suggestions for good self-hosted alternatives to popular online services, how they are better, or how they give back control of your data. Also include hints and tips for less technical readers.

Useful Lists

founded 1 year ago
MODERATORS
 

I don't have a home server yet but I'm exploring and sometimes I get confused about some posts here.

For example I saw a post asking for recommendation for a "self hosted budget management app". Can't you just install this type of app to your phone or pc? What's the purpose here, will you host it and access it from a browser? Or do you only want to backup its data to your server?

I hope I don't sound stupid please enlighten me.

top 50 comments
sorted by: hot top controversial new old
[–] ZombieLinux@alien.top 3 points 11 months ago (1 children)

Total control. Let’s take the budgeting app for example. I started using Mint in 2009. There’s more than a decade worth of banking, spending, and investment information in there.

Mint is shuttering in about a month. They gave all their users a month and a half notice. When it’s gone, it’s gone.

When a self hosted app is used (with appropriate backups, orchestration, etc) YOU the user get to decide when you’re done.

If something isn’t working for your life anymore, you can find an alternative and migrate everything over on your own schedule.

[–] AnApexBread@alien.top 2 points 11 months ago (1 children)

There’s more than a decade worth of banking, spending, and investment information in there.

That's the real reason I would self host something like a budget app. I don't want a company like Mint to have (and sell) my purchasing and financial history.

load more comments (1 replies)
[–] itsupport_engineer@alien.top 3 points 11 months ago

So we retain control over our private data. Do not trust corporations to value me or my data.

[–] AnApexBread@alien.top 3 points 11 months ago

"self hosted budget management app". Can't you just install this type of app to your phone or pc? What's the purpose here, will you host it and access it from a browser? Or do you only want to backup its data to your server?

I don't want some third party having access to all of my transaction history and knowing what I spend and where.

I hope I don't sound stupid please enlighten me.

Your question isn't stupid. There is an important decision you need to make on "is the juice worth the squeeze." While you can selfhost a lot of stuff sometimes there's better reasons not to. Email is primary example that gets brought up a lot. Sure you CAN self host it, but for a lot of people on this sub it's not worth the effort required to do so.

Each person has to make that decision for each of the things they choose to self host. Budget apps are no different.

[–] TheFumingatzor@alien.top 3 points 11 months ago

Can't you just install this type of app to your phone or pc?

Sure, but then the data is, in most cases, not mine. It's shared with some 3rd party. "Free" apps aren't ever free. No such thing as "free". You're always paying with something.

Other than that, it's a hobby. Learning hosting, docker, containers, servers, Linux, etc.

[–] schaka@alien.top 2 points 11 months ago

Most of the time it's just a hobby and I enjoy the challenge of solving a "problem" we have at home.

But for payment related stuff, I prefer having control over my own data. Granted I upload encrypted backups to a Google Drive via duplicati for important data - so technically Google still holds my data. But they aren't the ones in control and I have local backups too.

Of course, I don't back up terabytes of media. I'm considering backing up my own rips, harder to find stuff as well as my music (some, I don't even remember where I got it, because it's been on external drives for well over a decade).

[–] h311m4n000@alien.top 2 points 11 months ago

Most if not all apps on phones will require you to sign up and your date is out of your control as it is not hosted by yourself. Plus you are usually limited to doing everything on your phone which is a pita.

Selfhosting is a way of life. I enjoy providing services to myself and my family that I control with the peace of mind of knowing that data stays with me. And it's fun doing it too!

My guess is once you start selfhosting yourself, you'll eventually come to the same conclusions.

However, selfhosting isn't without it's dangers. You have to ensure you have backups of the data. You are also responsible for securing it and you have to maintain your infrastructure as well

[–] Lumsti@alien.top 2 points 11 months ago (1 children)

When you use a "free" app, you pay with your data.

Thats something a lot of us don't want to. Additionally, it makes fun and is kind of a hobby to build and maintain this stuff.

[–] JohnBeePowel@alien.top 2 points 11 months ago

Even when you pay for an app, chances are you are still paying with your data.

[–] sarinkhan@alien.top 2 points 11 months ago (1 children)

An easy reason to self host apps: share media with the household. Sure you can have a samba share and have people browse trough a folder to find the good movie. Or they can load jellyfin or Plex and have a netflix like interface that remembers where you left off and all the fun stuff. You can then add other stuff that will automatically search, download and organize new TV shows episodes for your, etc...

Another reason is some stuff are only possible when hosting. For instance, grocy is an app that lives on a server and manages your stock of food. You can scan goods with your phone and add them to your stock. You can scan them when you throw the can/box etc to say you used it up.

Then it generates a shopping list for you. The nice thing is that it lives on your server, not on your phone. So if more than 1 people do the shopping, you can have a synchronized shopping list, and update it in real time. And the self in self host part is cool because you decide who sees this and no Google or Amazon makes a profile out of your shopping habits.

You can have an online office suite that works in your browser without anyone unauthorized seeing your files.

You can have a bookstack wiki, where you put notes about the house, or whatever you want, and gave it being reachable only by you and people you allow, without a lot of account management.

You can have your own nextcloud, so you have file sync, calendar, etc, without it going at Google or apple. And it is on your server so you can have as much or as little data backup as you want. And often a good fiber line is cheaper than a VPS or a full dedicated server...

With all of this, you can seamlessly switch between multiple computers . You can also manage the loss/destruction of your laptop. Or phone. You can have a local equivalent to Google photos with photoprism.

You can have a frigate server for video surveillance and object recognition, but all in local, your video files don't leave your house. A s it will do local AI stuff.

Last but not least: when you self host your stuff, you can still do a lot when the internet is down. You can replicate services on your laptop if you want. You do whatever you want.

[–] BearOfaTime@lemm.ee 1 points 11 months ago

Grocy sounds exactly like the kind of app I'm currently looking for - thanks!

Heading over to github, I assume it's there?

[–] spusuf@alien.top 2 points 11 months ago

Security. Having your data in your own control instead of blindly trusting companies, where it's more likely than not your data is being sold.

Choice. If there isn't a feature, add it yourself, switch frameworks, change everything if you want, no more "we're working on it" status updates when something isn't working or a feature isn't out. All the options are in your hands.

Pricing. Why pay monthly for "premium features" when you can have the most premium tiers for free. Especially true on anything with storage limits, 1tb of storage drive being cheaper than a few months of 1gb storage on some apps.

Speed. Sometimes it's just more streamlined when there's less bloat and you've hosted the exact thing you need on your subdomain with a single login page between you and the exact page you need. Less interaction needed to get where you're trying to go.

[–] kondorb@alien.top 2 points 11 months ago (1 children)

Open-source self-hosted apps:

  1. Free - I don’t have to pay for 100 different subscriptions for crappy SaaSes that never get any meaningful updates and sometimes don’t work at all.

  2. Don’t depend on someone else’s infrastructure - my apps are up because I’ve ensured they’re up. Someone screwing up their deployment, which always happens in the worst possible time, doesn’t affect me.

  3. Often cost less to run - I have so much stuff stored in my Nextcloud that I would pay the cost of my entire setup for some cloud storage every 1.5-2 years accounting for electricity costs, equipment amortisation and even cloud backups. This point is even more valid when you add your family to it.

  4. Sometimes better made - for example Nextcloud macOS and iOS apps are much less buggy than Google Drive on these platforms.

  5. Give me full control over my data - for me that primarily means that I’m responsible for backing up and restoring it. I’ve experienced data loss with cloud services multiple times over the last 10 years, now I don’t trust them with my data. I’m perfectly capable of handling it myself.

  6. Give me features that the horribly inefficient SaaS businesses cannot afford, like streaming high-res lossless music or compression-free 4K video.

  7. Aren’t tied to internet speed, ping, server issues at least while I’m home. Nothing can beat LAN, especially when it’s wired.

  8. Aren’t even tied to the company’s developers to some extent - I can fix bugs in open-source apps myself. I can even fork it and modify how I want.

  9. Will run forever if I want - any SaaS can be closed at any moment as a business decision. Worst that can happen to FOSS - it gets abandoned. Which is not too bad - I can still run it.

Half of these point only work because I’m a senior software engineer with DevOps experience myself.

[–] BearOfaTime@lemm.ee 1 points 11 months ago

You nailed all the reasons that I self host. This should be pinned to the sidebar.

[–] CactusBoyScout@alien.top 2 points 11 months ago

After a while, you start to get tired of apps and other online services either disappearing or changing in ways you don’t like.

[–] theBloodShed@alien.top 2 points 11 months ago

Short answer: accessibility, security, and privacy.

Long answer: Hosted services allow accessibility for more devices and users. If your network is properly secured and maintained, your personal network will be more secure than huge services that are well known targets with thousands of employees as potential victims of social engineering. Privacy because I don’t trust my data with third parties and cloud based services.

Some added detail on that last topic, it’s not just trust to secure my data; it’s trust to respect my data. I’ve worked as a software engineer building systems for marketing teams. I’ve worked projects to integrate with data warehousing services and social media platforms. Most people would be shocked by how much data companies have collected and correlated with you.

[–] Simon-RedditAccount@alien.top 2 points 11 months ago (11 children)

Can't you just install this type of app to your phone or pc?

For one instance of app, it's possible to install it onto a single machine.

Things get tricky when you want to access the data from multiple devices. Even trickier, when several people want to access it. After a certain point, it's easier to have a "cloud" solution. And since "cloud" is just somebody's else computer, why not make this a computer YOU own?

[–] fab_space@alien.top 1 points 11 months ago

I ❤️ this answer.

[–] reubenbubu@alien.top 1 points 11 months ago (1 children)

if someone wrote an open source free solution for you to self-host i think its just rude not to use it. so self-hosting is just being polite

load more comments (1 replies)
[–] SpongederpSquarefap@alien.top 1 points 11 months ago

This is exactly it - storage is the best example

Could I run all of my stuff using a cloud service? Of course, but it would be very expensive and only available if my internet works (and there's a lot of hops between me and my data in the cloud)

I can buy a 2TB HDD for £64 - most cloud providers charge that much per year for 1TB

load more comments (8 replies)
[–] Fungled@alien.top 2 points 11 months ago

Some of it has to do with open source. For example, the budgeting app I use in proprietary and is excellent and I happily pay for it. However if the company went bust or was acquired or something else unfavourable happened, I’d be up a creek without a paddle. At least if it’s open source there’s some hope of it at least not completely disappearing

[–] 12_nick_12@alien.top 2 points 11 months ago

So I can backup and move my data as I please. Also means if it's self hosted I can access it from anywhere.

[–] Lanky_Information825@alien.top 2 points 11 months ago

I got sick and tired of throwing my money at unreliable, overpriced hosting solutions, only to discover I could do it at a fraction of the cost at home, and without ever opening a single port to the public.

[–] Zeal514@alien.top 2 points 11 months ago

Think of it like the difference between renting and owning something. When you rent a home, you do not own it. You don't get to choose. Want a nicer water heater? Not your choice. The owner takes 100% of the responsibility, but often isn't penalized for misbehavior. So they can for instance, decide that they don't like you, and you no longer can use their servers. Or perhaps they dislike other companies, and strip features from the rental agreement. Even worse, all your valuable data, along with everyone else's, is all stored in a single valuable location, becoming a prime target for thieves. I half expect some of the "data breaches" we see are inside jobs, where the company leaves a loophole open, tells the "thieves" about it for a small sum of cash.

I personally like self hosting. Once you get into it, and understand how to reverse proxy, and set up a domain, you can essentially self host anything ridiculously easily. Like, for me, setting up a container, and funneling it into my reverse proxy maybe takes like 30-60 minutes, ironing out bugs and stuff? Sometimes if it's particularly easy, it takes like 5 minutes lol.

[–] gramoun-kal@alien.top 1 points 11 months ago

> Can't you just install this type of app to your phone or pc?

The people who make that app, and host the servers that run it, they often like to get paid.

Not necessarily by you. Maybe they'll get paid by Google in exchange to allowing Google to show you ads in their app.

Maybe they sell the app, then, yeah, they're paid by you. Maybe some other thing. Like doing some statistics with everyone's data and selling the results.

Either way, they're working for you, but you're also working for them, in your own way.

Me, I work for myself. That's just how I roll. That's just how many of us roll. We enjoy the idea of being unaffected when the companies that own our services decides to hike its prices up, or punish users with an ad blocker. We like the idea that we'd be unaffected by a nuclear strike on the Silicon Valley, God forbid. We'll be sad and all, but our apps will still run.

[–] srosorcxisto@alien.top 1 points 11 months ago

Typically if someone wants to self host something like that it's because they want to interact with it using a mobile app.

Without that aspect, you're correct that desktop software would be the more typical way to go.

Using the budgeting example, self hosting would be to provide something like Mint rather than something like QuickBooks.

[–] AlteRedditor@alien.top 1 points 11 months ago

When it comes to budget apps... I haven't found the one that has everything built in. I'd rather build it myself and host it as well.

[–] terAREya@alien.top 1 points 11 months ago

let's take the budgeting app as an example. Here is what I want.

  1. Free
  2. open source
  3. Available anywhere on any device
  4. All data stored on MY equipment. No cloud provider or 3rd party

The only way to achieve this is self hosting in my opinion.

[–] JackDostoevsky@alien.top 1 points 11 months ago

For example I saw a post asking for recommendation for a "self hosted budget management app"

that's not something I would host on my home server, but that doesn't mean it doesn't have an audience.

not everything might be for you!

[–] mrkesu@alien.top 1 points 11 months ago

What's the purpose here, will you host it and access it from a browser? Or do you only want to backup its data to your server?

I have been online for a long time and seen countless services come and go, often my data goes with them.

So that was my reason for a long time, having my data available and not relying on some third party.

Now, with the emergence of Big Data + AI I've also become a lot more privacy aware. Before I couldn't even imagine why anyone would want to target my data (data mining takes a lot of work to be useful), but now/soon they can just point AI at data dumps and ask it something like "give me a list of X people to exploit, order it by method, chance of success etc etc"

Paranoia? Yes, but suddenly it feels reasonable to be paranoid.

[–] desnudopenguino@alien.top 1 points 11 months ago
[–] Wdrussell1@alien.top 1 points 11 months ago

This is going to highly depend on what you hope to achieve with an application.

  1. Does the app need more than one person to access it?

  2. Does the app need constant up time?

  3. Does it make sense to host it?

Really this boils down to how you feel about each of these questions. So your example, the budget software. Yes I can have a single instance of that app on my computer. However I need my wife to have access to it, as she handles the finances.

Another example however is Jellyfin. This is something that is accessed from multiple locations and by multiple people. So today I might be watching a movie while I work. Tomorrow my wife might be doing that. Friday we might have family night. So that needs a server hosted out to actually make sense.

Game servers are another example here. They need constant up time and to be on hardware that is not the machine I am playing the game on.

It is also important to remember that many of us host all of this in a single location that we back up, and also have redundant drives. So we can easily make sure we have copies of our data at any given point. So while yea I can keep all my D&D data and PDF management on my computer, it is easier and more secure to keep and host that on my server where I have a backup and parity running. There plenty of other examples here too like my phone pictures of my daughter or other various bits of data.

Finally, there are things I just want to tinker and play with. I have no reason to host specific things other than to look at what the tech is like. Stable Diffusion is an example here. But my own ChatGPT instance would be useful if only every now and then. Just have to figure out what exactly makes the most sense to you.

[–] tamdelay@alien.top 1 points 11 months ago

What’s your hobby? Football? Yeah I don’t get why you watch that when you could spend an afternoon self-hosting instead…

[–] StarSyth@alien.top 1 points 11 months ago

Lets say you buy groceries but don't have a fridge, your next door neighbor offers to share their fridge as its massive, makes sense. However if you own a fridge, why would you use your neighbors fridge?

[–] Vogete@alien.top 1 points 11 months ago

Basically yes, you can install the app. Where is the data for that app stored? If on the phone, then your data is lost when your phone dies (maybe even when you switch phones). If in the cloud, that's great, but then someone else has your data. Selfhosting is to get the convenience of "the cloud" (multi-device/user sync and sharing) without actually relying on the cloud.

Take Jellyfin/Plex/Emby for example. Yes, you can just connect a laptop with and HDMI cable and play from VLC. Or you can just use an USB stick in the TV and play from the file system. But you have 2 TVs, a tablet, and a phone that all want to watch something from your movie collection. Of course you can just plug this stick into other devices, and use it that way. Or subscribe to Netflix that may or may not have the movie you want to watch. But what if you had your own Netflix that can be used by multiple phones, tvs and tablets, even at the same time? What if it even synced the progress of a series so your TV no.2 knows where you left off on phone no. 4? This is what self hosting is made for. You HOST "Netflix" yourSELF.

[–] -Alevan-@alien.top 1 points 11 months ago

For me, it started when I first replaced my 500GB HDD with a 128GB SSD in my laptop. As it was much smaller, i had the need for a NAS. I did not have the money for it, but I had an old PC and some used HDDs.

Now I run 3 node docker swarm cluster with a dedicated machine for storage, for video sharing, password management, document managemeny, photo management, server mangement, personal accounting, streaming service replacement, device backup, dns server. And these are just the services I use daily.

[–] Patient-Tech@alien.top 1 points 11 months ago

Also, cost. If I want 18 TB of data accessible from my phone or someone else’s house, how would you do that and not cost a ton of money? I can repurpose old thin clients and I needed the space anyway, so yeah.

[–] smileymattj@alien.top 1 points 11 months ago

Let’s say you’re VM home lab server has reliable backups & snapshots setup.

You treat your PC, phone, tablet as expendable devices. Nothing saved locally, nothing backed up. If your one of your client devices does, they are easily replaced. Because all important data is on your server. Single point of capture, so everything is backed up and safe.

If you’re in that scenario. You’d want to run everything off your home server.

[–] lestrenched@alien.top 1 points 11 months ago

You can access it from any device (assuming relevant client apps and its over the network)

[–] Ken_Mcnutt@alien.top 1 points 11 months ago

One thing I haven't seen talked about as much is just the variety of self-hosted applications that might even have paid/enterprise counterparts because the use-case is so extremely niche. Either that or it's only targeted towards big businesses.

Everything from monitoring a homebrewing operation to keeping a full inventory of my possessions can be accomplished with selfhosted apps that may otherwise be subscription based or nonexistent in the paid market.

[–] user01401@alien.top 1 points 11 months ago

Selfhosting can be a desktop app as well, meaning you don't want to use a SaaS product.

[–] Cheap_Specific9878@alien.top 1 points 11 months ago

I killed more PCs by stupidly placing my screwdriver (2) than by static discharge (0). And I opened, build and handled like 100 PCs in my 5 years of IT

[–] Edianultra@alien.top 1 points 11 months ago
[–] HearthCore@alien.top 1 points 11 months ago

Selfhosting is a journey of motivation, frustration and learning.
Perks are: Appliable knowledge in the IT space and understanding of virtual concepts be it Software Stacks or Networking interactions, "offline" Data i.E. selfhosted and not under someone elses thumb/control/exposure

Since you have access to all data, you can basically do magic behind closed doors and reap the benefits.

Setting up a selfhosted Environment means you can pipe in offline ressources just aswell as share access to specific entities without handing the keys over to a 3rd party.

In the case of a budget management app - it's finances. Not everybody is cool with having their finances hosted in an app on a device that can crash or get stolen, we'd rather have access to it when we need and want, but still have that data when all my devices used to access it usually are gone.

i.e. when the Service Provider decides to shut down - this one aint. (shot at google)

--

I've started with one ThinClient, then bought two more to cluster them up and experiment with HighAvailability and shared CEPH-Storage between the nodes for 10s Migrations of fullblown VMs.. then bought a Dell Workstation with Two Server CPUs and .. basically virtualized that ProxMox cluster within my ProxMox Baremetal Dell host.

With the knowledge i managed to gather in the last year alone, I'm able to setup a coherent Work Environment for 50+ People with reliable SSO and 2FA mechanisms, shared FAST storage with dedublication of files and continous nightly backups that get checked for validity and automatic pruning of old unneeded backups on - 1 external NAS + Cold Storage on a buddys Datacenter with 20TB of encrypted storage just for me.

--

I basically have no care in the world for the data in my house at this point, since everything's backed up nightly.

I can restore from House fire by setting up a new host with ProxMox, mounting the network storage and restoring the NAS and BackupVM - then just clicking restore on everything..
Since the Services are all on a subnet that's managed virtually by a OPNSense VM and VPN is run on the ProxMox host, everything is drag and drop + Setup your own VPN Solution - if I ever want to gift someone my done work without the data, basically.

--

Why do i NEED this?
To break the spiral of neccessairy skills and knowledge for 'entry level' jobs in technical positions and understanding behind security implications, proper troubleshooting, documentation and service culture i.e. there's so many technologies i'm somehwat familiar with now, that I understand what others in the buisness world need of me to properly process errors, requests, whatever.

load more comments
view more: next ›