this post was submitted on 08 Jun 2023
91 points (100.0% liked)

Free and Open Source Software

17953 readers
128 users here now

If it's free and open source and it's also software, it can be discussed here. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

I just recently started playing around with an old pc as my homeserver and am curious of any recommendations for lesser known self hostable foss software that you would recommend

you are viewing a single comment's thread
view the rest of the comments
[–] greybeard@lemmy.one 8 points 1 year ago (2 children)

You may be way ahead of me on this, but I highly recommend using docker for this endeavor(or podman), as it really allows you to try a lot out without making a mess of your system.

I run pihole, syncthing, and gitea locally(among less interesting things.)

[–] beerd@beehaw.org 2 points 1 year ago (2 children)

I just started using podman yesterday, and only used docker for about a week before that, im excited for the learning to be had in this area. A couple days ago i tried pihole, for some reason it didnt serve the web interface, but i will definitely kepp on trying.

[–] greybeard@lemmy.one 4 points 1 year ago (1 children)

So PiHole is a little special if I recall correctly, you have to give it a dedicated virtual interface. Or at least I did. I'd highly recommend using docker compose(or the podman equivalent) for setting up your various containers. It makes it very easy to bring them up and down and modify them quickly and easily.

[–] beerd@beehaw.org 3 points 1 year ago (1 children)

Thanks for the directions i was quite stuck!

[–] greybeard@lemmy.one 4 points 1 year ago (2 children)

Not to overload you here, but if you do get PiHole going, I recommend setting up a docker to act as a proxy so you can setup an internal domain. PiHole can manage the internal DNS entries, then the proxy will translate them into the various docker services. So you could have, say, DNS entries that say miniflux.beerd.local to make it very easy to remember.

[–] constantokra@lemmy.one 1 points 1 year ago (1 children)

You can do that without pihole by making DNS entries with your registrar pointing to internal IPS.

[–] greybeard@lemmy.one 2 points 1 year ago

True, but not everyone has a public domain. And some of those that do, like myself, prefer a split DNS situation to keep the internals of my network hidden.

[–] beerd@beehaw.org 1 points 1 year ago

Thanks, i will definitely do that

[–] derived_allegory@beehaw.org 4 points 1 year ago* (last edited 1 year ago)

Yacht is a great UI for starting a container, especially for self hosting, there are a good amount of tutorial online.

I personally also host

  • syncthings that will sync my app settings on the phone, and push it to my cloud drive,
  • pi-hole to block trackers. I generally let ad through, but not trackers.
  • jellyfin for media library
  • transmission for (cough, cough) seeding fedora, mint and other free and open source, and 100% legal stuff.
  • home assistant for automations.

Some other things you can try:

  • a home Minecraft server, not exactly FOSS, but if you are into it, you should do it.
  • Nextcloud for syncing photo and documents, but remember to keep a offsite backup.
[–] DidacticDumbass@lemmy.one 2 points 1 year ago (3 children)

Can you share with me what OS you are running? At the moment I am using MX Linux because it is familiar to me, but is likely suboptimal for running a server.

I think docker is really cool, but felt like a lot of work compared to using flatpaks or a package manager, but I am really limiting myself and it is probably not that hard to learn.

[–] greybeard@lemmy.one 2 points 1 year ago (2 children)

Strange, Lemmy didn't tell me you replied. Well, I run mostly Ubuntu Server OSs for Linux for work, but at home I am cheating and using a Synology NAS as my home server with docker installed on it. CentOS used to be a good go-to for servers, but I think Redhat made some changes to the way it releases and I think a lot of the CentOS users moved to other distros.

[–] carlwgeorge@beehaw.org 1 points 1 year ago

CentOS still works great for servers. The problem with classic CentOS and other RHEL clones is that they can't fix bugs or accept contributions that change the OS. CentOS finally fixed these problems by moving upstream of RHEL (but still downstream of Fedora). It is now the major version that RHEL minor versions branch off from, so it's still very stable and highly compatible. I've got a thread with diagrams that may help.

https://fosstodon.org/@carlwgeorge/109985597904896856

[–] DidacticDumbass@lemmy.one 1 points 1 year ago (1 children)

Interesting. I never used CentOS, but I think it makes sense to run an OS designed to be used in servers. That would probably make my life a hell of a lot easier than setting up everything on my own.

Good call.

[–] greybeard@lemmy.one 2 points 1 year ago (1 children)

Honestly, with Linux, the biggest difference between server distros and desktop distros is if a GUI is installed by default. But one advantage of using a well known server distro like Ubuntu Server is that most articles on the Internet assume you are running it.

[–] DidacticDumbass@lemmy.one 1 points 1 year ago (1 children)

True. I think the software I would download anyways is installes by default, which makes it easier.

I don't need a server to have a gui since most of the interfaces for services are browser based anyways.

I am in no rush! It would do me well to explore and become more familiar with the networking side of linux.

[–] greybeard@lemmy.one 2 points 1 year ago (1 children)

No doubt, there is an endless amount to learn with Linux. I've been using it for servers since the early '00s, and have been using it as my main OS on my personal devices since probably 2016, and I still regularly learn new things. If you are trying server stuff out on PC hardware, I suggest looking into virtualization. Proxmox is a great OS to start with for a virtual host. Then you can try out as many OSs as you want as virtual machines. You may be way ahead of me on that, but back when I was first learning what it meant to run a server it was of great help to me. That was before the days of docker and most containers(although I did use BSD Jails a little).

[–] DidacticDumbass@lemmy.one 1 points 1 year ago

I only recentlg learned about Proxmox through Lemmy, so I will definitely give it a go... I keep saying that about all this new software I am exposed to. Hah.

I have always been fascinated by virtualization, but was concerened with resource management and nerfing my computing experience.

Which is silly since concurrent computing has existed since nearly the inception, and with a few exceptions, CPUs spend most of their lifetimes idling without ever approaching the limit of resource usage.

Yeah, I need to experiment.

[–] constantokra@lemmy.one 2 points 1 year ago* (last edited 1 year ago) (1 children)

Oh, as for os, i'd recommend dietpi on a SBC that uses a memory card, because it logs to RAM so you don't wear the card as much, and Debian for everything else. You don't run Into problems with Debian. Unless you like snaps, then go with Ubuntu. As much as I hate snaps, they are good for some services that tend to break on upgrades, like has been my experience with nextcloud.

[–] DidacticDumbass@lemmy.one 2 points 1 year ago (1 children)

Ooh. I have a RPI 3 that I never use. Maybe I am overcomplicating this. I tried to use it for managing my 3D printers but it was just a hassle. I think it is actually cheaper to get one of those Creality boxes at this point instead of rolling my own.

Plus SBCs are quiet. Okay, I will try it.

[–] constantokra@lemmy.one 1 points 1 year ago (1 children)

Octoprint on a pi is great for 3d printers. You can even use a pi zero of you disable Bluetooth (it uses the better serial chip otherwise). I've never seen the creality boxes. I'll have to look into it.

[–] DidacticDumbass@lemmy.one 1 points 1 year ago (1 children)

Yeah, I was using octoprint. I think I just do not understand networking enough to get over random problems I have.

Actually, I got it working. It was fine for one printer, the set the z offset into the bed so that was a no go. Never got the webcam to work, which is most of the reason I wanted it in the first place.

[–] constantokra@lemmy.one 1 points 1 year ago (1 children)

The webcam is... not easy. Or anyway, it worked when I used a raspberry pI with a raspberry pi camera. Now I use some orange pi zeros with USB cameras, and the setup was tricky. Even worse, it seems to change the camera device every few reboots, so it's basically useless. My printer is by my desk though, so it's not a priority for me. If I really wanted a camera i'd probably set up a cheap WiFi camera that exposed a stream and just set octoprint to point to that stream instead of serving a local one itself. I also use a relay to power my printer on and off, and I think if I was going to set it up again i'd just use a smart plug and one of the plugins to turn it on and off.

[–] DidacticDumbass@lemmy.one 2 points 1 year ago

Oh, I am glad it is not just me. That is so anmoying.

IP cam seems like a good option, but I already have a bunch of webcams so... meh.

[–] constantokra@lemmy.one 2 points 1 year ago (1 children)

The thing about docker is, you can set it up with all your data mounted into a folder in your home directory. So, for instance, ~/docker/jellyfin/data, and your docker compose file for jellyfin is in the jellyfin folder. So if you want to move it to a different system, you just rsync the folder over and run docker-compose up and it's done. Also, backups are super simple, because you just stop the container, rsync (or Borg or duplicati, restic... whatever) your container's folder over. Of your server gets completely trashed, you just restore your backup to another computer and you're good. Usually the better maintained projects are even architecture aware, so you can move from Intel to arm or whatever. It's totally worth learning.

[–] DidacticDumbass@lemmy.one 2 points 1 year ago (1 children)

Okay. Awesome. I was seriously thinking about getting NAS or a specialized media box like an NVIDIA Shield or Dune HD, but I have plenty of older computers that can do the job, so it seems like a waste. I have Rokus that handle video playback, so I just need to set up streaming.

I do need to get better at backing up! My computer has like, 250 GB SSD and a TB HDD I never mount, but definitely need to use for offloading all my data. Just downloading a few games really eats up my disk space. Need to get that sorted out too.

Damn I am so lazy with computers.

[–] constantokra@lemmy.one 2 points 1 year ago (1 children)

I used a really old laptop with a bunch of USB disks for quite a while. Then I made a naskiller 4, and it was super easy to migrate because I used docker for everything. I'd recommend searching up the nasskiller builds whenever you do want a NAS. They price everything out and tell you exactly what you need and what options you have, and it emphasizes getting used hardware off eBay for cheap.

Backing up is always a challenge. I'd suggest looking into duplicati, because it's super easy for servers and desktops.

[–] DidacticDumbass@lemmy.one 2 points 1 year ago (1 children)

Nice! Thanks for the tip. They get so expensive.

I believe in used hardware. Most of my computers I inherited or got at flea markets, yard sales, and thrift stores. Ebay is no different, and probably significantly better if refurbished.

[–] constantokra@lemmy.one 1 points 1 year ago (1 children)

Oh yeah. I love old hardware. I'm hesitant to use desktops as servers anymore because of the power they use, but laptops in particular are great. You can get an old Dell for next to nothing and replacing their batteries is super cheap. It has its own battery backup. I even got a USB 3 card for mine. Used it for several years and when I went to migrate to my nas I found out the LCD had gone dead. Hadn't noticed or cared.

[–] DidacticDumbass@lemmy.one 2 points 1 year ago (1 children)

That is actually a good point. I was considering getting a couple of UPS for my main computer and server, but a laptop would do the job. I should pick one up anyways.

Yeah, power consumption sucks. I do not want to contribute to the waste culture, but I also don't want to overspend on resources.

[–] constantokra@lemmy.one 4 points 1 year ago

It's definitely a balancing act.