I started with handmedowns donated to my by someone from mastodon that was getting rid of junk computers. All tiny think stations.
Selfhosted
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:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
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.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Old PC's and especially laptops (make sure to consider removing the battery though) make great homeservers. You can run dozens of services on old hardware.
My home server is made of literal garbage.
Yeah, any relatively modern used PC will be more than enough
You don’t need more than an old desktop with a low powered i3/i5 and a free drive bays to build your first NAS. Just install TrueNAS and get going.
There are advantages to getting server-grade hardware. It’s designed to run 24/7, often supports more hard drives, ram sticks, processors, etc, and often is designed to make it very quick to replace things when they break.
You can find used servers on sites like EBay for reasonable prices. They typically come from businesses selling their old hardware after an upgrade.
However, for simple home use cases, an old regular desktop PC will be just fine. Run it until it breaks!
Yes, but if you care about power efficiency then they really aren't a great option. Most professional server hardware that you can get for a decent price uses significantly more power than an old mini computer or a cheap N100 PC. I own a proliant but rarely power it on due to the fact that I could rent an similarly performant VPS for 2x the power bill. Besides that many server CPU's don't have integrated GPU's and will require additional hardware if you want to run something like Jellyfin.
LabGopher extracts information from active eBay listings to help you easily find the right hardware for your needs.
I use my former PC as the home server. It is probably 10+ years old, has no M2 slot or something, but an SSD for the OS. More than big and fast enough for all my needs: File service (Samba), Web service (apache2), Wiki service (mediawiki), Database (MySQL), Calendar service (Radicale), Project service (Subversion), and probably some others I forgot. All of it running on Ubuntu Server, aministrated by WebMin.
The only investment I did when I turned this into a server was that I put 2x8TB in it as a RAID for bulk storage - I dump the family PCs backups on that machine, too.
My home media server is an old nuc mini pc i5 16Gb RAM with attached usb storage running on a Linux distro, runs Jellyfin and a few other applications for the household.
In short yes, an old pc will work fine.
These also have the advantage of being nice and quiet, which if you are going to have it in your house rather than a hot garage or whatever can be nice.
I bought a NAS, later realised that it supported Plex and Jellyfin but it was often too slow to do the transcoding. I still use it for storage but there were no real upgrade options. It was cheaper to get an old NUC, rather than replace the NAS with a high spec one to be able to run Jellyfin properly.
I’m doing a very similar thing with an old Dell thin client. I did inherit a large server from a company that was upgrading, but I’ve been thinking about downsizing a lot lately so now I use a few small computers on a 10 inch rack.
the best server is one that you already have
Do it. Jump in. Just start with whatever you can assemble.
It's a great way to keep your room warm.
Servers are just computers, you build what you are going to use it for. You can use a cheap N100 mini pc to host jellyfin as the important part there is the video encoder/decoder to transcode video. Though it can only do 2 streams at 4k with tone mapping. So it might not be good enough if you have more than 2 people using it or are running more stuff on it.
Certainly could, depends what exactly you want to run and the specs of the machine of course. Something to keep in mind though is if its very old it may cost more in electricity than a fairly cheap new machine. But really it depends on your use case.
A lot of self hosted things have fairly low requirements but not all of them.
Absolutely yes. It’s better to use an old PC for a home server, because upgrades are cheaper, parts are easier to find, troubleshooting is generally easier, they’re usually more energy efficient than an older dedicated server, and you’re saving an old pc from becoming e-waste.
That being said, what you want to run on it determines how old/cheap of a PC could work for you.
Jellyfin works best when you can do hardware encoding, and these days that means throwing an ARC A310 in there and calling it a day. If you have a new enough processor, you don’t even need the graphics card.
Mastodon is pretty disk heavy, but if you’ve got a nice hard disk to put the Minio server on and an SSD for the db, you’re golden. That’s how I run https://port87.social/. It’s running on an old 6th gen Intel i7. The PC I built in 2015 (with a few upgrades).
CPU intensive servers like Minecraft are where you start to run into problems with older hardware. If it’s just you on there, a 10 year old CPU is fine, but if you’ve got a few friends, the server may start to struggle to keep up. I had to move my server off that same system I talked about above, because Minecraft was pegging the CPU a lot. But a 5 year old CPU would be fine for that. (Assuming that the 10 year old and 5 year old CPUs were both top tier CPUs when they were new. Like i7, i9, Ryzen 7, Ryzen 9. A five year old i3 would still struggle.)
Basically unless you’re trying to run AI models on it, cheap hardware is fantastic for personal servers.
CPU intensive servers like Minecraft are where you start to run into problems with older hardware. If it’s just you on there, a 10 year old CPU is fine, but if you’ve got a few friends, the server may start to struggle to keep up.
Not sure how recently you ran this, or what all your were running, but in the past couple of years Paper has hit some pretty major milestones in unlocking threaded processing. Barring some sort of spammy 0-tick redstone nonsense or over the top plugins, I'd wager a Raspberry Pi 4 could handle up to about 5 or 6 friends without seeing any TPS dips. Its really remarkable how far they've pushed performance recently.
That’s really cool! I just run the vanilla server, but maybe I should check out Paper. Can it import worlds from vanilla?
Yes, it absolutely can, it's super easy! Just swap your Minecraft .jar with Paper and it'll do the rest. It's a tiny bit harder to go back, but only marginally.
Out of the box, aside from huge performance benefits, Paper is virtually indistinguishable from vanilla, but it also opens the door to a whole world of easy-to-use server-side plugins.
Edit: (you should still make a backup before swapping, just in case)
That’s awesome! Yeah, I’ll definitely check it out. Thank you!
Wondering if you have and insight on power usage with the a310 in the system while idling. I built a sub 25w server and don't want to mess that up.
Sorry, but I don’t know. I use an A380 in my system. I got it before the A310 was available.
How does the a380 impact your power consumption? If you have ever measured it.
I’d imagine not very much. I don’t know how to measure just the GPU. It doesn’t have any desktop installed, so it’s only ever rendering a console. It can transcode tons of 1080p streams at once, so even a transcode probably doesn’t draw much power. The CPU is the hungriest part, and that’s mostly idling too.
I installed a Linux server on an old laptop, then installed Jellyfin. It's like a Walmart special from 8 years ago, so no graphics card outside of the integrated graphics. Doesn't matter. I disabled sleep, and power saving settings on the Wi-Fi. I had a USB external 1tb drive hooked to it. The laptop doesn't even have support for a 5ghz wifi connection. No issues at all. I can run 2 movies at 1080p in different rooms off the external USB drive without issue. Just go for it. I installed RustDesk on it so wherever I am I can remote to it, turn on the VPN and kick off a torrent for whatever movie someone mentioned while at work or what not. Then when I get home it's there.
There's no right way, really. You can turn almost anything into a server.
If you have old hardware laying around I suggest you start with that. When you're comfortable with setting everything up and using it on your day to day, then it's time to invest into hardware.
My server pc is just my old computer parts. Ryzen 3 2200G with with 6Gb of RAM. It gets the job done!
Any normal computer can become a "server", its all based on the software.
Most enterprise server hardware is expensive because its designed around demanding workloads where uptime and redundancy is important. For a goober wanting to start a Minecraft and Jellyfin server, any old PC will work.
For home labbers office PC's is the best way to do it. I have two machines right now that are repurposed office machines. They usually work well as office machines generally focus on having a decent CPU and plenty of memory without wasting money on a high end GPU, and can be had used for very cheap (or even free if you make friends that work in IT). And unless you're running a lot of game servers or want a 4k streaming box, even a mediocre PC from 2012 is powerful enough to do a lot of stuff on.
My server is an HP Small Form Factor Corei5 32GB RAM that I bought on a second hand shop. The thing I paid attention the most was the i5's gen, as some older ones don't include h265 transcoding acceleration, or sometimes h264. This is rather important for Jellyfin. ANything else, just go with it and try!
You definitely want an 8th gen (Intel) or better to have Jellyfin Quick Sync support. It's what I have (i5-8400T) and it offer a fairly decent AVC (h264) and HEVC (h265) transcoding for my usage. However, for futur proofing consider an 11th gen for the AV1 support.
Yes, you can easily do it.
You want to look at 2 things: 1. Noise 2. Ratio of performance / power usage.
- Noise
When your PC runs 24/7 then it might be annoying to hear it's noise sometimes. Real server cases are usually even much louder than former PC's because they are built for super strong air flow inside.
Think carefully what you need. In my situation it is just one light wooden door away from my bed, so I wanted it impossible to hear. I optimized it so, and it ended up being so quiet that I cannot hear any fans, but I hear the clicking of the harddisks all the time. Well, I got used to that, mostly. For my next home server I want to build my own case that absolutely blocks this noise.
- Ratio of performance / power usage
People are frequently asking what if I turn this old Pentium etc. into a server?
Well, these old CPU's have very low performance compared to new ones, but it might just be sufficient. But then you recognize that the old veterans burn 100 Watts for the same performance where a modern (low performance) CPU burns only 5 Watts, and now it will do that 24/7. Think about your yearly costs. Many times it turns out that buying a new one saves your money very easily.
I have 3 servers at home. The main is an AMD epyc server. Very nice hardware. The other two, are cheap 13 and 14 Gen Intel i3s (14100t) and they work like a charm, despite being cheap consumer grade hardware. For self hosting, a server is just any computer. Unless you need the features or reliability of enterprise hardware, basically anything can be used. Do it
Heck yeah! Old desktops or laptops are how most of us got started.
Things to consider:
- Power- this will be on 24/7 probably. That adds up
- Speed- not just CPU, but RAM, disk access and network interface can limit how much data you want to move.
- Noise- fans can suck (pun intended). Laptops tend to run quieter
I'm sort of looking to upgrade and N100 or N150's are looking good. Jellyfin can do transcoding so that takes a little grunt. This box would work well for me. It's not a storage solution, but can run docker and a handful of services.
I love the vibe in this thread/community. You all seem like real cool cats. I appreciate that.
When I started my home server was an old laptop, eventually it became an old desktop, and now it's server specific hardware. My recommendation is use whatever you have at hand unless you have specific reasons. I went from laptop to desktop because I needed more disk space, and went to specialized hardware for practical reasons (less space, less electricity, easily accessible hot swappable hard drives). But for most of the stuff I have there an old laptop would still be enough, heck, a raspberry pi would be enough for most of it.
It is a fantastic idea to start your home server project on some e-waste hardware, and use it until you know specifically what features you're lacking that you would need better hardware for.
Servers are just really big computers. I started off with a Chinese Raspberry Pi clone, then upgraded to an old mac mini + mini pc + a cheap cloud server (VPS). As you can see, you can turn any old computer into a server.
The cloud is expensive but reliable. Having your own server is cheap but it will go offline with every network fault or brownout. If you’re serious about self hosting I suggest buying a UPS.
Whatever computer you decide to use as a server, make sure it is quiet. When I first started, I tried to use an old 2010 aah workstation as a server, but the fans were so loud I couldn’t sleep, it was driving me crazy.
My answer would basically be yes, but. An old desktop (or even laptop) can definitely be used and will run fine. It should be very easy to get one for free or very cheap as companies will typically write them off after 3-5 years.
However, you might want to consider power consumption. Running a desktop 24/7 will use a lot more power than a new MiniPC or a NUC, so you may want to calculate how much it'll cost to run a desktop 24/7 compared to a device that only uses 5W or whatever, and see whether the upfront savings make up for what you'll pay in electricity over a certain period.
I think you might actually want to look into second hand MiniPCs unless you absolutely need to fit a bunch of hard drives in a case (like you probably would with Jellyfin).
Also I want to echo what others are saying about noise. A desktop or rack mounted server will make more noise than a laptop or MiniPC.
That depends. A lot of the power consumption comes from spinning media. Even very old desktop Intel chips have CPU throttling and consume very little while idle. Corporate desktops, even old ones, are usually quite economical.
I'll tell you a secret: my cool looking 4u server case with 8 hot swappable drive bays actually just houses my last gaming rig. Know what's going in there when I update my current rig?
This rig.
I bought a used m920q for this reason, still working on it, I'm at the docker-compose phase
Those are beasts! My homelab has three of them in a Proxmox cluster. I love that for not a ton of extra money you can throw in a PCIe expansion slot and the power consumption for all three is less than my second hand Dell Tower server.
When talking about hardware, the physical computer itself, a "server" is commercial grade and designed to run under heavy loads for years on end with very high reliability. Error correcting RAM, redundant power supplies, room inside for huge processors, more airflow than a C-130 for cooling, etc.
On the software side, a "server" is just a computer that provides some service to users on a network. You very likely have one of those Wi-Fi router/ethernet switch things from the likes of Linksys or whatever, right? That is almost certainly acting as a DHCP server for you LAN, in that capacity it might handle kilobytes of data a day because dynamically assigning IP addresses on a household Wi-Fi network is not a very demanding task, so it'll do it on a tiny little ARM processor with a few MB of RAM. It probably also has a web server, which is how the "go to its IP address in your browser and get to your router settings page" works. It's serving a little website that most of the time gets absolutely zero traffic.
So, turning a desktop PC into a "server." The question is, what services will it provide? Desktop PCs are pretty good at mostly low traffic with bursts of intense work, so if they're going to sit still doing nothing while you're at work all day, and then maybe handle some file storage or media transcoding during the evenings while you're home, a PC will do that just fine, if you're okay paying the power bill of having a computer up and running all the time.
If you're hosting a website or a game server with a lot of active users around the clock, you might want to look into more professional hardware.
A couple years ago my in-laws were downsizing after retiring and they asked if I would possibly have any use for their ancient desktop PC (at least old enough to have shipped with Windows 7).
I installed Debian on it and it's running Jellyfin, qBittorrent through Gluetun, Calibre-web, NextCloud, and Pi-Hole containers, with plenty of room to spare. I've also got some services running on Raspberry pis (back when they were cheap). And an external 4TB hard drive connected to it acting as a NAS. No hardware transcoding or 4K video on Jellyfin but that's no big deal for me.
All that to say yes, you can absolutely self-host on repurposed hardware. Any old PC you're looking at is no doubt newer than mine.