So after months of dealing with problems trying to get the stuff I want to host working on my Raspberry Pi and Synology, I’ve given up and decided I need a real server with an x86_64 processor and a standard Linux distro. So I don’t continue to run into problems after spending a bunch more, I want to seriously consider what I need hardware-wise. What considerations do I need to think about in this?
Initially, the main things I want to host are Nextcloud, Immich (or similar), and my own Node bot @[email protected] (which uses Puppeteer to take screenshots—the big issue that prevents it from running on a Pi or Synology). I’ll definitely want to expand to more things eventually, though I don’t know what. Probably all/most in Docker.
For now I’m likely to keep using Synology’s reverse proxy and built-in Let’s Encrypt certificate support, unless there are good reasons to avoid that. And as much as it’s possible, I’ll want the actual files (used by Nextcloud, Immich, etc.) to be stored on the Synology to take advantage of its large capacity and RAID 5 redundancy.
Is a second-hand Intel-based mini PC likely suitable? I read one thing saying that they can have serious thermal throttling issues because they don’t have great airflow. Is that a problem that matters for a home server, or is it more of an issue with desktops where people try to run games? Is there a particular reason to look at Intel vs AMD? Any particular things I should consider when looking at RAM, CPU power, or internal storage, etc. which might not be immediately obvious?
Bonus question: what’s a good distro to use? My experience so far has mostly been with desktop distros, primarily Kubuntu/Ubuntu, or with niche distros like Raspbian. But all Debian-based. Any reason to consider something else?


Sorry for the late reply. I’m just disorganised and have way too many unread notifications.
LXC containers sound really interesting, especially on a machine that’s hosting a lot of services. But how available are they? One advantage of Docker is its ubiquity, with a lot of useful tools already built as Docker images. Does LXC have a similarly broad supply of images? Or another easy way to run things?
No worries, answer anytime :)
Since LXC works on top of the Linux kernel, anything that works with it can be easily used as an image. For example, you can just throw any distribution .iso into it, and it will handle it as a container image. Proxmox does all the interim magic.
Say, you want to make a container with programs running on Debian. You take the regular Debian .iso, the one you use to install Debian on bare metal or VM, feed it to Proxmox and tell it to make an LXC container out of it. You specify various parameters (for example, RAM quotas) and boom, you got a Debian LXC container.
Then you operate this container as a regular Debian installation: you can SSH/VNC into it and go from there. After you’ve done setting everything up, you can just use it, or export it and use somewhere else as well.