My take on self-hosting
This is a write-up of my experience with self-hosting services. I hope it’s useful and encouraging to people that wishes to get started in this art.
[...]
For some people, I’m a paranoid, I avoid social networks and use Linux.
[...]
Armed with that motivation, a dusty Raspberry Pi 2 and 64GB SD Card, I set to adventure myself. First I had to decide which OS to install. Ubuntu, Debian or Raspbian didn’t appeal to me. Having previous good experience with Arch Linux ARM I thought why not. Despite claims out there that Arch is not reliable, I never had any serious trouble with it for the last 7 years as my main system or in 2 years of self-hosting.
Once the OS was installed, another decision had to be made, how to manage services. Some people insist in using packages provided by the distribution. I knew this would have limited success, after all, I couldn’t depend solely on packagers and AUR. Some people really like to suffer more than necessary and use Kubernetes for home labs. If you have time, multiple boards and motivation to learn Kubernetes, go ahead, it is just not my case. There is also Portainer and Ansible, which I didn’t really consider. Finally, I settled on using Docker with compose files. This approach has been serving me well, there are alternatives, there are even distros (e.g. Umbrel) which automate the installation and maintenance of services (I’m not talking about packages and systemd services). For now I’m happy with the balance of control, simplicity and maintenance effort.