this post was submitted on 17 May 2025
192 points (94.0% liked)

Selfhosted

46654 readers
567 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
 

I want to set up a home server and take advantage of everything it can offer, specialty privacy.

Raspberry PI, no matter the version, are all quite expensive here in Brazil, so that's off the table. I'll go for a regular desktop. But the the requirements for a server that "does it all" remains a mystery to me.

What specs do you guys recommend?

top 50 comments
sorted by: hot top controversial new old
[–] neidu3@sh.itjust.works 64 points 5 days ago* (last edited 5 days ago) (1 children)

Anything that does the job is good enough. At its core a server is just a regular PC with a dedicated purpose and software. Sure, there are specialized hardware better suitable and purpose built, but it's not a requirement.

I for one prefer 19" rackmount stuff with disk bays in the front, but that's more of a convenience than anything.

UPS is nice, but it'll work without it.

I've had to deal with the Brazilian computer market and how it's ridiculously overpriced due to import fees, so in your situation I'd just get any hand-me-down computer. Servers generally don't require much unless you're doing something special or intensive.

Get your hands on whatever you can find for free or dirt cheap (laptop or desktop doesn'tmatter), install linux, and you have a basic setup that you can work with. If your use case requires more, then that's something you can accommodate in the next iteration of your server.

This.

Almost all of my gear is bought used: switches, server, even memory. My main server is an old Dell C6100 blade server I got for $250. My disk array is a 12-bay SAN that I found for $50 and took a chance on being able to get it working. It’s power hungry but it’s got redundant everything and I have spare parts on the shelf next to it.

I’ve been branching into ARM servers a little and right now I’ve got an RK3588 board with 32G of RAM. That’s new (and expensive for me) but I got a fibre channel array for $20 that I’m going to try to make work with it. $8 FC HBA and a $12 cable along with a $30 m2-to-PCIe adapter intended for eGPUs. I’m not going for speed here, but used data centre equipment is nice and some of it is dirt cheap because it’s too slow for “real” work.

[–] MNByChoice@midwest.social 52 points 5 days ago (1 children)

The joke is electricity and Linux.

The real answer is the free hardware.

My main reliable is from 2008? It cannot do modern virtualization due to not having the CPU instruction sets.

[–] Shdwdrgn@mander.xyz 7 points 5 days ago

You might check if a simple CPU upgrade would get you there. I previously ran some 2005 Poweredge servers that came with a Pentium D processor, and it cost me something like $8 from ebay to upgrade to a Xeon and start running KVM.

[–] BombOmOm@lemmy.world 35 points 5 days ago

What are you intending to run on this server?

  • If it is just PiHole, you can basically get the weakest computer you can find.

  • If you want lots of storage space, you will need to make sure you have a case and motherboard that will accommodate the drives.

  • If you are running encryption on those drives as well, you will need a CPU more powerful than what comes in a Pi, but nothing crazy.

  • If you are running lots and lots of VMs, you will want lots of RAM. A linux VM will use maybe a few GB each depending on what software each is running internally, a windows vm will use a bit more.

  • If you are doing AI workloads, you will need a graphics card.

[–] Lemmchen@feddit.org 26 points 5 days ago (1 children)

Take a look at some N100 devices (or N95/N150).

[–] BrianTheeBiscuiteer@lemmy.world 6 points 5 days ago (1 children)

These are a good alternative to RPis. Just be aware some of these are sort of haphazardly assembled so they might have cooling issues or bad power supplies.

load more comments (1 replies)
[–] Jason2357@lemmy.ca 10 points 5 days ago (4 children)

Find out if there are any corporate off-lease machines being sold in your area. USFF machines are frequently used as mini desktops or point of sale computers then sold off for peanuts when warranties are done. Especially look at i3-8xxx generation, as they don’t support windows 11 fully.

[–] mic_check_one_two@lemmy.dbzer0.com 3 points 4 days ago* (last edited 4 days ago)

Any corporate fleet machines, really. Corporate C-suite executives always demand the best laptops on the market… They also demand the newest laptops on the market. Because they can’t be seen with a worse laptop than the graphic artists or the programmers. This means there’s always fresh stock of last year’s corporate laptop hitting the used market. And they’re almost always gently used, because they just sat docked on some executive’s desk for a year, and were only used to answer emails.

Those $2000 laptops often get dropped on eBay for like $250, because the random Accounting person who has to auction them off doesn’t really care how much they sell for; They’re just checking a “was sold to recoup costs” checkbox.

load more comments (3 replies)
[–] jagged_circle@feddit.nl 9 points 4 days ago (1 children)
[–] Human01001100@lemmy.ml 1 points 3 days ago* (last edited 3 days ago) (1 children)

That's the thing, when I buy new devices, my old ones usually go to my parents or for donation. So I have no old tech laying around, sadly. I'll have to buy, that's the reason for the post.

[–] jagged_circle@feddit.nl 1 points 3 days ago

You dont have to buy new. Go to a thrift store and buy used if you have nothing lying around.

[–] ashenone@lemmy.ml 20 points 5 days ago (1 children)

When I started my media server in 2020 I used e-waste from my building. Had an i7 3770, 16gb ddr3 ram and an rx460 graphics card. I ran jellyfin, ultrasonic and audiobookshelf for 10-15 people with no problem on this hardware. Anything made within the last decade should provide a good starting point for you.

[–] bblkargonaut@lemmy.world 9 points 5 days ago (2 children)

This was almost my gaming PC specs in 2020. Rx580 and 16gb more ram. It's now my server running jellyfin and immich for my family.

load more comments (2 replies)
[–] Shdwdrgn@mander.xyz 19 points 5 days ago (1 children)

Keep an eye out for people trashing perfectly good desktop machines because Windows 10 is being retired.

If you want a server that "does it all" then you would need to get the most decked-out top of the line server available... Obviously that is unrealistic, so as others have mentioned, knowing WHAT you want to run is required to even begin to make a guess at what you will need.

Meanwhile here's what I suggest -- Grab any desktop machine you can find to get yourself started. Load up an OS, and start adding services. Maybe you want to run a personal web server, a file server, or something more extensive like Nextcloud? Get those things installed, and see how it runs. At some point you will start seeing performance issues, and this tells you when it's time to upgrade to something with more capability. You may simply need more memory or a better CPU, in which case you can get the parts, or you may need to really step up to something with dual-CPU or internal RAID. You might also consider splitting services between multiple desktop machines, for instance having one dedicated NAS and another running Nextcloud. Your personal setup will dictate what works best for you, but the best way to learn these things is to just dive in with whatever hardware you can get ahold of (especially when it's free), and use that as your baseline for any upgrades.

[–] jagermo@feddit.org 6 points 5 days ago

This. Be on the lookout for company grade PCs, like from Dell, Lenovo or Fujitsu, they come in small form factors, offer decent upgradability and are low/on power consumption and noise (most of the time)

[–] utjebe@reddthat.com 6 points 4 days ago

Take what you have, start small and learn from it.

Old laptops are great, because they have low power consumption and even pretty used up battery will give you power redundancy.

Even a 10yo laptop is something with 4-5th gen Core cpu and that has plenty of power to get you started.

[–] acockworkorange@mander.xyz 16 points 5 days ago

You have to have an idea of what you'll run on it first.

Old corporate desktops will do for a NAS and basic light services. Look for one that has three drive bays plus an NVMe slot.

[–] Nibodhika@lemmy.world 9 points 5 days ago

Depends on what you want the server to do. A Minecraft server and a Pihole server have vastly different requirements. As a general rule, any old laptop or desktop will do, think on requirements for your grandma and that should cover most (except gaming servers) needs.

[–] JustJack23@slrpnk.net 12 points 5 days ago

Had this link in my clipboard for a different comment but it fits here as well: https://hackaday.com/2025/04/09/self-hosting-a-cluster-on-old-phones/

In all honesty this may be a bit advanced depending on your experience and more importantly nerves, but any old PC/laptop can be turned into a server.

As for parameters I would suggest you go to the apps you plan on running and check their minimum requirements.

[–] merthyr1831@lemmy.ml 10 points 5 days ago (1 children)

A computer. Seriously that's it. Of course depends on your use case (media servers usually need more than a web host for example)

load more comments (1 replies)
[–] MTK@lemmy.world 7 points 5 days ago

Go wuth what you have. Old laptop? Works! Old desktop? Also works! Old android phone? Might work! (VM/terminal)

If you have a device that can run Linux, start with that. Once you get some usage you can understand if you need an upgrade, and what kind. Maybe you will findout that this old laptop that you had works perfectly and you can sace money on buying a server.

[–] spv@lemmy.spv.sh 4 points 4 days ago (1 children)

depends on what you want to host. a lemmy or pleroma instance could run on an old laptop -- that's often where people start. a small minecraft server too. email can be a bit more resource intensive, but it's not that bad. mastodon can be a pain in the ass. peertube's main bottleneck tends to be upstream bandwidth. jellyfin doesn't require too much power, but if you want to transcode a "decent" GPU is preferable. i threw my old 1650 in there and it works fine for a stream or two.

[–] kieron115@startrek.website 3 points 4 days ago* (last edited 2 days ago) (2 children)

EDIT: I meant QSV Gen 7, which would be intel Gen 11. Kaby Lake and up can still handle HEVC in hardware but they have to use software as well for 4K.

worth mentioning that any intel cpu with an iGPU from generation 7 (kaby lake) and up can handle 4k hevc transcode in hardware. i just upgraded my plex box to an i7 8700K and it works quite well. an old office workstation with like a 9th or 11th gen intel cpu would probably rip through transcodes.

load more comments (2 replies)
[–] Landless2029@lemmy.world 5 points 4 days ago

This specifically depends on what you want to run.

I'd say grab any unused PC in your home or off the street and it'll work. Raspberry Pi are good for low wattage so it's not expensive to run 24/7/365.

The electricity savings would pay for itself over time vs a 10 year old random desktop.

[–] Zwrt 6 points 5 days ago* (last edited 5 days ago)

I highly recommend you try proxmox to get the most potential out of you system. Basically can run many services and vm with little overhead, dynamically sharing the specs.

Now about those specs… what everybody else said really but heres some pointers:

You don't need a big dedicated gpu unless your doing something that explicitly demands it. They are tricky to setup with virtual machines also.

If you plan on running a minecraft server i recommend at least 8gb ram. Most will probably run fine on 4. You can probably run quite a few things on 8gb but ram is cheap and its nice to have some extra room.

For cpu, the more things you do the More sense it makes to have more cores. If you plan on buying then amd ryzen x y z is you best option where.

X is the number you want higher Y is a number you should not care about as much Z is potentialy the letter “G” for graphics, they are often more expensive. Get them anyway because now you dont need a dedicated gpu (and even if you already own a gpu. Trust me you will thank me if that one ever has issues)

If you really want me to draw you something decent up that will give you plenty of freedom to experiment.

Ryzen 7 … G, 32gb ram. Small ssd for os. xTB of performence HDD ideally configured as some raid in proxmox.

It still cannot be said often enough that a (well cared for) second hand unlabeled laptop running ubuntu is all what most people need when they start pondering about home servers.

[–] _cryptagion@lemmy.dbzer0.com 2 points 4 days ago

I run about thirty services off of an old Dell workstation that I “acquired” from my last corporate job. That includes a full Servarr stack. I’m pretty sure whatever you have will probably do the trick.

[–] moonpiedumplings@programming.dev 11 points 5 days ago (2 children)

If you have an old android phone, then you can repurpose it into a Linux server.

Or an old computer. But you probably don't need to buy anything to get started.

load more comments (2 replies)
[–] FrederikNJS@lemm.ee 4 points 4 days ago* (last edited 4 days ago) (3 children)

As long as it's capable of booting into Linux, then you can start building a homelab...

Initially I had a 2-bay Synology NAS, and a Raspberry Pi 3B... It was very modest, but enough to stream media to my TV and run a bunch of different stuff in docker containers.

In my house, computer hardware is handed down. I buy something to upgrade my desktop, and whatever falls off that machine is handed down to my wife or my daughter's machines, then finally it's handed down to the server.

At some point my old Core i7-920 ended up in the server. This was plenty to upgrade the server to running Kubernetes with even more stuff, and even software transcoding some media for streaming. Running BTRFS gave me the flexibility to add various used disks over time.

At some point the CPU went bad, so I bought an upgrade for my desktop, and handed my old CPU donown the can, which released an Intel Core i5-2400F for the server. At this point storage and memory started to become the main limiting factor, so I added a PCI SAS card in IT mode to add more disks.

As this point my wife needed a faster CPU, so I bought a newer used CPU for her, and her old Intel Core i7-3770 was handed down to the server. That gave quite a boost in raw CPU power.

I ended up with a spare Intel Core i5-7600 because the first motherboard I bought for my wife was dead, so I looked up and found that for very cheap I could buy a motherboard to match, so I upgraded the server which opened up proper hardware transcoding.

I have since added 2 Intel NUCs to have a highly available control plane for my cluster.

This is where my server is at right now, and it's way beyond sufficient for the media streaming, photo library, various game servers, a lot of self-hosted smart home stuff, and all sorts of other random bits and pieces I want to run.

My suggestion would be to start out by finding the cheapest possible option, and then learn what your needs are.

What do you want your server to do? What software do you want to run? What hardware do you want to connect to it? All of this will evolve as you start using your server more and more, and you will learn what you need to buy to achieve what you want to.

load more comments (3 replies)
[–] rc__buggy@sh.itjust.works 9 points 5 days ago

For Linux: Anything Intel 4xxx is fine, later is better obviously. 4GB RAM is OK for one family, 8GB gives enough headroom to host NextCloud for a small office. SSD for operating system makes it snappy as fuck at the terminal but aren't mandatory, slow drives for storage are fine.

[–] DieserTypMatthias@lemmy.ml 4 points 4 days ago

Basically none. Grab whatever device you have on hand and install Docker on it.

[–] rtxn@lemmy.world 9 points 5 days ago (5 children)

The minimum spec is whatever e-waste you can find that still powers on.

My home server has an i3-4160, 10 gigabytes of mis-matched RAM, a ten-year-old 240 GB SSD with 36000 hours on it, and three 1 TB hard drives in a RAID5 array each with ~25000 power-on hours. It runs Proxmox on the metal with a virtualized OPNsense, Nextcloud, and Jellyfin server (plus smaller services). Jank levels are high, but not fatal, and it was mostly free.

load more comments (5 replies)
[–] muusemuuse@lemm.ee 3 points 4 days ago (1 children)

It depends what you want to do with it. What do you want the server to do?

[–] Human01001100@lemmy.ml 2 points 3 days ago (1 children)

Right now I want to host movies, photos, automatic backups, files in general. Also use it for the smart home that I'm slowly putting together, basic stuff... for starters.

Someone mentioned that if I want to host 4k content I should go for a 7th gen Intel CPU or newer for HVAC support, something I didn't know, but that showcases exactly the sort of restrictions that I had in mind when I submitted this post.

Sorry it took me a while to respond, didn't expect to have this many responses.

[–] muusemuuse@lemm.ee 1 points 3 days ago

So yes and no on that recommendation. If you are just hosting content for local consumption, transcoding is unnecessary since you have the network bandwidth to just throw the data directly to whatever is playing it. So weaker hardware is perfectly fine. If you are doing lots of concurrent streams or there is network access outside the house, the limited bandwidth can become an issue so transcoding suddenly matters and more powerful hardware comes into play.

I have used many ARM SBCs and a few low-power Intel boards like my current N100 and they’ve all been fine. While I generally dislike Intel their quicksync is very useful in media server configurations. If you are going to be doing a lot of live transcodes, I would consider throwing an ARC GPU in there and having jellyfin utilize the transcode capabilities of the Intel GPU instead of the CPU as it can handle more simultaneous streams. Beware the xe driver as there are issues with it in certain configurations. Same with HuC/GuC. The older standard driver is more likely to just work. Jellyfin and the archlinux wiki have great documentation on this.

NVIDIA used to be top tier here but their transcode tech is pretty old by this point and the quality, while acceptable, isn’t the best. Intel beats them. AMD, generally a preference for me, has a terrible media transcoder. Easily the worst quality of all of them. For raw compute and pushing pixels, AMD all the way but for transcode I would pass.

So to summarize: cheap out if it’s just local access. Transcode is pretty much unneeded. If it’s outside the home and/or had many streams at the same time, Intel for the GPU and AMD for the CPU.

[–] zipzoopaboop@lemmynsfw.com 6 points 5 days ago

I use a random micro PC with Ubuntu installed. 2tb nvme, 16gb ram, not even sure what the cpu is

[–] GeorgimusPrime@lemmy.world 5 points 5 days ago

If the size and low power consumption of the Pi are what appeal to you, you can try a getting a used thin client. Lots of suggestions and specs here: http://parkytowers.me.uk/

[–] MangoPenguin@lemmy.blahaj.zone 7 points 5 days ago* (last edited 5 days ago) (4 children)

Intel i3 or i5 4th gen or newer will be solid.

Dell, HP, Lenovo all make a ton of generic office PCs that are good for a home server, and you can find older models for under $40 in the US so hopefully they're also cheap in Brazil.

load more comments (4 replies)
[–] ThunderLegend@sh.itjust.works 4 points 5 days ago

As everyone have said, it depends on what you want to have in your server. I started with an old lenovo I bought in mercado livre for 200 BRL. It was a DDR2 PC with 4Gb ram. I bought an ssd and installed Debian. Used for years. After that I tried to build a DDR3 PC. Made it with 800 BRL and it's decent to run my docker containers like an arr stack, nextcloud, VPN, reverse proxy and vaultwarden.

[–] sugar_in_your_tea@sh.itjust.works 7 points 5 days ago* (last edited 5 days ago)

Raspberry PI

This also shouldn't be your default option. Your default should be whatever you have laying around, and a lot of people have a Raspberry Pi sitting idle, hence why people use them.

What specs

That depends on what you want to do with it.

For example, if you want to host a video server, then you'll want something that can handle transcoding. Check the Jellyfin docs for details, which recommends an N100 or better.

List all the things you need and want, and then look up what the requirements are. Basic file hosting is pretty light, so you really don't need much (hence the Raspberry Pi rec).

I personally use an old PC with the following specs:

  • Ryzen 1700
  • 16GB RAM
  • GTX 750 Ti GPU
  • 2 8TB HDDs (bought for the server)
  • 1 SSD for boot (128 GB, just needs to store the OS)

This is way overkill for what I need, but I had it laying around. You could even start with a laptop, you'll just have limited storage (can get a USB emclosure of you want).

If you don't have something, maybe a mini PC would work (minisforum, beelink, etc). Or maybe it doesn't. I don't know what you're planning to run on it. You probably don't need anything fancy, your biggest requirement might be the GPU/iGPU if you're planning to do transcoding.

[–] kokesh@lemmy.world 3 points 4 days ago

I'm running an old Igel M340C thin client to run a lot of stuff, from Jellyfin to AdguardHome. Perfectly enough.

[–] umbrella@lemmy.ml 6 points 5 days ago* (last edited 5 days ago) (1 children)

a potato computer can be a server if the workload is light enough.

i had a core 2 duo era pentium with 2gb of ram as a server once and it did the job. minecraft server for 6 people + pihole + file server.

core 2 duos are dime a dozen in brazil and are probably more powerful than some older RPIs. you can probably get something newer too.

load more comments (1 replies)
[–] callyral@pawb.social 2 points 4 days ago

I live in Brazil too and bought a R$120 old HP computer running Windows XP on MercadoLivre. Works decently enough for a Minecraft server after an upgrade (4 to 8GB of RAM). Old computers are great for price and they're good if you can upgrade them.

For general purposes, get something better than what I bought since it is not the fastest (even though it runs the Minecraft server software alright, it still lags). Maybe upgrading with an SSD would help performance.

load more comments
view more: next ›