Maybe you have an old laptop lying around that you would like to put to good use, or maybe you want to take full control of your online activity. Or you’re just curious about the incredible world of self-hosting. Whatever your reason be, self-hosting - running and maintaining services on your own server - opens up a world of possibilities.
Self-hosting puts you in the driver’s seat. You’re managing your own data, infrastructure, and services. You get access to this unparalleled control and flexibility you wouldn’t be able to without. The possibilities truly are limitless.
But what exactly makes up a server? Surprisingly, not much! Servers are just regular computers with one very, very important difference: they’re always on. They’re meant to be powered up 24/7 and always connected to the internet.
And the best part is - the actual hardware specs don’t matter nearly as much as you might think. Beefier specs will indeed help with performance. But even mediocre, older machines will still work pretty well. The important thing is that your server stays online and connected.
I first got into self-hosting when I realized I had an old laptop that I never really used much. I decided to repurpose it into something more useful - a server. It really struggled to run modern software, but as a server it works perfectly fine.
I’m currently running two servers at home - a 2014 HP laptop and a 2014 Mac Mini. They’re pretty bad in today’s terms for general-purpose usage. So I installed Linux on them and made them servers. The best way to breathe life into your old hardware is to turn them into servers. Old computers typically have more than enough memory and processing power for a server, which don’t even need much at all!
Okay, now that you’ve understood the how and why, let’s talk about the what. There are really no limits to what you can do. Want a secure, personal VPN? Set up Tailscale. Need a place to store and stream your media? Try running your own media server with Jellyfin. If you like to keep your documents organized, Paperless-ngx might be your thing. There’s always something you can self host for anything you need.
It gets even better if you’re a developer. Hosting your own Git repositories and running your own CI/CD server is only the beginning. Your server can become a powerhouse for all your needs - a remote computer on which you offload everything you need to do. In essence, you’re replacing services you use online with services you run.
And finally, self-hosting is an incredible experience. It can honestly be a lot of fun. You’ll dive deep into networking, cybersecurity, and everything keeping your server running smoothly. Knowing that you’ve built something that’s accessible from anywhere in the world is pretty cool. Sure, there’s a learning curve, but the knowledge you gain along the way makes it all worth it. Everything you do is a step you take.
Over the couple few days, I’ll be writing some more posts on how you can get started in self-hosting. Each post will cover a specific topic like networking or administration. I’ll be breaking down the concepts step by step, sharing interesting things I’ve learned along the way. Hopefully by the end of the series, you’ll learn something new.
Built with 💖 using Astro and TailwindCSS.
© 2024 Shrish Deshpande. Licensed under the GNU Affero General Public License v3.
Hosted on Cloudflare™ Pages. Source Code