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.
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!
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.
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.
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.
If you can find one of the optiplex desktops with the T version of Intel processor, those are low powered
I don't think those really idle at much less power, so I'd take the performance of the normal variants
Hmmm I'll have to take your word for it. I've had one in my garage running for 2 years straight and I didn't notice a power bill change.
I use a random micro PC with Ubuntu installed. 2tb nvme, 16gb ram, not even sure what the cpu is
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.
x86 will decimate most arm chips
The new stuff is a bit more debatable but old stuff it isn't even a fight
I have a old optiplex 7010 with i7 and 8gig RAM. About 70€ on eBay. I upgraded it with a nvme SSD to bolt from (great tutorial here) and salvaged an old SATA HDD from an external case.
Currently runs 11+ container in proxmox without issues. Way beefier than a raspberry pi.
I also have room for 3 more hdds to put in a mergerfs system and 2 additional pcie slots für things like a faster LAN card or an additional SATA controller
any old laptop with at least a third gen intel or something comparable works. you do want to get some extra storage via a cheap old hdd
Even a Commodore 64 can be a server depending on the service it has to give.
This depends entirely on what you want to run. A pihole needs vastly different resources than for example offering jellyfin to 20 simultaneous users. Both can be hosted at home.
raspberry pi's arent the best option anyway since you need to add on a hat just to get some SATA ports. i think Odroid has some boards with sata connectors. zimaboard or zimablade are some other options off the top of my head
The things I paid attention to was
USB3 - you need this otherwise connecting external drives will be a joke
Motherboard needs to accept up to 32 GB of RAM. Mine currently has only 8 but knowing I can upgrade is nice.
Quiet - must be silent when idle.
CPUs of less than 8th? gen will suck at video transcoding due to lacking certain capabilities. Important if running jellyfin, etc.
The beauty of self hosting is it's all about your individual circumstances so you priorities and acceptable tradeoffs will differ.
i’d modify the CPU requirement and say you can sub that out for a 2nd hand cheap nvidia card if it’s easier
here’s the table of cards with nvenc: https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new
i’m running an old af xeon and added a $30 entry level GPU from years ago and it was a great upgrade
My preferences are quite different.
You'll need a lot of RAM for all the containers, 64 GB is nice. A CPU that saves power when idle is fine. You'll need at least 16 TB storage (32 TB RAID1). SATA HDD is fine, when you have ZFS and cache using SSDs. Never use USB for drives.
It does not need to be quiet. Just put it in the basement and close the door.
My jelly fin server is running off of an entry level desktop in 2009, a single core celeron processor. I have to downscale video files to standard definition in order for it to keep up.
I'm using my old desktop from 2010. There's no such thing as a server that can "do it all", but any computer from the last 10 years would probably be a fine place to start. The more you do, the more likely you'll be to hit some sort of performance limit, and by that time you'll know more about what you actually want.
In short, find old cheap/free hardware and start playing around.
8 GB RAM or more. OS installed either to SSD, or a HDD that does not store service data (for performance). a modern CPU with at least 4 cores. modern means it has at least AES and AVX2 instruction sets to do math quickly, but probably you can just pick one made in the last 10 years, with less years generally meaning better energy efficiency.
what kind of services do you want to host on it? initial plans, perhaps longer term plans?
But the the requirements for a server that “does it all” remains a mystery to me.
"All" can include anything. I mean, you can include a home parallel compute render farm that will cost millions of dollars.
You're going to have to narrow it a bit down. You can have people maybe suggest some of the things that they use their systems for. Maybe it's hosting services for a cell phone that some people use cloud-based services for. Maybe it's home automation. Maybe it's a webserver. Maybe it's AI image generation.
EDIT: To put it another way, a self-hosted server is just a computer, often without a monitor and keyboard directly attached, that you have in your physical possession. The range of things that that might be used for and capabilities it might have is really broad. It's like saying "I want a vehicle. What is a vehicle that can do everything?" I mean, that might be a bicycle or a three-trailer road train, depending upon what you're going for.
You can build a render farm for not all that much money. You will pay a very high electric bill but other than that it is possible.
I mean, you can build a render farm on a single Raspberry Pi if you want, technically.
That very much depends on what you want it to do (what is "everything") and how many users you have.
Rather than give you specific recommendations, here's some guidance for parts
Mobo: The more slots you have for RAM and storage, the better.
CPU: literally anything. More cores and faster cores are ideal, but CPU requirements for these things are generally lower than a desktop.
RAM: Buy 1 stick of the fastest and highest capacity RAM your motherboard can handle. When you're ready or you start to see slowdown, buy another of the same stick. You can get far on 16-32GB, you won't need much more until later.
Storage: an SSD for the OS and one or more HDDs for storage.
PSU: generally anything in the 500-700 range will be good. You'll want more if you plan to put a GPU in, though.
If you aren't planning on running a media server go for a old desktop or laptop (with Ethernet port). Your bottleneck will be your network speed 9 time out of 10. Also use a firewall and a anti scrapper (ex: Anubis) to avoid wasting resources.
A repurposed old PC with something like yunohost, generic Debian, or some lightweight Linux will probably get you what you need.
It heavily depends on what programs you want to run.
Do you have access to Raspberry Pi clones like Orange Pis etc? They’re often cheaper and you can order them straight from China.
Why would raspberry pi's be expensive but the hardware to build a server be any cheaper?
Second hand markets exist and Raspberry Pis are rarely sold second hand.
Sorry for my ignorance, so brasil has nothing like an Amazon where OP could buy a new pi from and have it delivered? If thats the case i feel like I could buy OP a pi and ship it to them in brasil for less cost than it would be to buy anyother option of hardware for a home server. Assuming USPS still offers flat rate boxes for international shipments.
I'm not Brazilian, but I'm guessing importing stuff is expensive. Look at PC components elsewhere in the world, it's typically much more expensive than the US.
Right but thats kinda what im saying is that wouldn't all hardware be expensive and not just Pis?
Except second hand. That's my point.
Scalpers for highly sought-after hardware or just general lack of supply in specific regions.
A CPU that can run Linux along with some networking
Literally any old PC is likely fine. It may be slow, it may struggle or even fail with some of the very complex software (perhaps you will encounter timeouts, or you will spend so much time waiting for memory to swap in or out to disk that it won't be worth using) but you can run Linux itself on a potato and if your machine isn't powerful enough, maybe you can get a second one and run different stuff on each, or just scale down your expectations and don't try to self-host LITERALLY everything just because you can. Certain services are very intense, others will run on a very small piece of a potato.
A raspberry pi 4 or 5 and some fast USB 3 hard drives.