Hacker News new | past | comments | ask | show | jobs | submit login

I've been self-hosting since 2003 - starting with a repurposed Pentium 1 sitting under my bed, with Slackware still installed through tons of floppy disks. And by this day I host ~30 services. My two cents:

- Mileage may vary. I see plenty of people self-hosting their SearX(NG), Miniflux, Wallabag, Grafana, PiHole instance on a RPi at home. And that works perfectly fine: those services are relatively lightweight, they don't take more than a few tens of MBs of RAM, installing them is usually as easy as a docker pull, and they aren't too bandwidth-hungry for a decent home connection. Jellyfin? Sure, but streaming high resolution content may warm up the RPi quite a bit. NextCloud? Hmm, it starts to be a bit borderline for a RPi at home - especially if you don't add some decent fast external disks. Matrix? Hmm, that starts to be a heavy beast - and if you decide to federate your server it may eat a lot of bandwidth and disk space. Mastodon, or anything involving federation on scale? Unless you're ready to add a few GB of storage every couple of weeks and can receive and content very fast, it may be a problem (and it also takes 1.5 GB of RAM to run a small instance of my server). Keycloak, ElasticSearch, Kafka or any fat beast running on a fat JVM? At least 1 GB of RAM goes to run each of these beasts. Bitwarden? The latest versions will freeze everything unless MSSQL can allocate at least 2 GB of RAM at startup. So do you want to run your personal website or a few small services on your RPi at home? You can probably do it. But self-hosting other popular services will require you either more CPU power (and, in most of the cases, still an x86 architecture), more memory, more/faster disks, more bandwidth, or all of them.

- I've reached a balance where I run my small services (SearXNG, Miniflux, Wallabag, PiHole, Gitea, Grafana etc.) on a RPi. The medium ones (Jellyfin, NextCloud, Matrix, Keycloak etc.) on a Celeron mini-PC with SSD disk and ~10 TB of storage attached. Those that take >1.5 GB of RAM (like Bitwarden and Mastodon), or need to be accessible even if my house goes on fire (like Bitwarden itself, the main node of my VPN and the git server with all of my synchronized configurations), or eat up more bandwidth than my house could handle (like Jitsi), are running on a couple of Linode servers outside of my network. And, as the traffic for some of those services starts to increase, I'm even considering using Cloudflare.

- I agree with what other people mentioned in this topic: you don't need Kubernetes for everything. Sometimes Docker/Podman containers managed by systemd services are more than enough. I personally like to run Arch whenever I can - there's an AUR package literally for everything, and a wiki page for nearly everything. Then you don't need to waste extra disk space to host a lot of Docker images. All the configuration files are stored on an external git server connected over VPN. So bootstaping a system or moving/copying services is usually as simple as running a git clone and running a couple of Ansible playbooks to automate the deployment. Sure, Kubernetes can help, but it's just one among the possible tools that you have in your box.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: