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!
view the rest of the comments
Start with Pi-Hole. Use Linux (I started with Debian) to install Docker/Docker compose, Use Docker to install Portainer, and Portainer to install Pi-Hole, and literally everything else. Run it on any e-waste you have. There's a thousand guides, it's easy (comparatively), immediately useful and you'll learn right quick about redundancy when you break it. Oh you'll learn so much when you break your only instance of Pi-Hole. Watchtower messes up the updates while you're at work and SO wants to use Facebook... You'll learn. Also, don't do automatic updates for a long time.
You should also learn how to read documentation and Docker's is stellar, it'll help you when you're trying to implement some solo project with minimal documentation.. You might hear RTFM which translates to "have you read the documentation?".
Chatgpt is a fine rubber duck as long as you're doing standard things on standard platforms. Explain your problem to ChatGPT as best you can and troubleshoot with it. Everything should be a place holder, give it zero details you don't have to. Then follow the stupid steps it gives you. If it asks you if you made sure the port is what you told it you expect the port to be, go fucking check. It's a robot, it doesn't care how good you are just do the thing. If none of that works come here with all the checks you've already done so someone here doesn't ask you if you made sure the port was 8096 in the compose file and you typed it as "8906:8096". You will mess up simple stuff, it's fine we all do/did, LLMs are great at covering the basics.
You'll want to use Podman, Dockge, LXCs, what have you eventually. But Docker/Portainer are the standards. Everyone that can use Podman/Dockge/... can use Docker/Portainer, not the other way around. You'll get more help doing standard things on standard platforms.
You learn what Docker is, how it works, what a compose file is, how they work, what maintenance is like. Then branch from there, after Pi-Hole what's the most impactful to you, media? Jellyfin, plex & *arrs+gluetun, what's your poison? All available through docker. Keep adding services until you cant stand the upkeep, you expand beyond your hardware, or you know you have all you want.
Docker is least effort to learn to do this stuff, you may want to out grow it eventually, but I don't think you'll ever not use docker/podman for something. Even when you have everything set up as a NixOS box, there's likely gonna be a docker/podman host running something somewhere, probably a third redundant pihole.
Then tinker with what you have. Docker is good but has limitations, what is Proxmox, what's an LXC? In summer I wish everything was on Docker so updates are painless (comparatively). In winter I'm glad I'm in proxmox and can tinker away.
My entire homelab used to live on a rPi4 running Debian, and docker doing almost everything on your list. My current pair of n100 minis can do everything on your list. I think (I've not tried game servers).
It doesn't take much. Start with Debian, Docker, Portainer, Pi-Hole.
When something catastrophically breaks, it's generally not worth chasing the solution. Good teaching moments later but by then you'll have snapshots to revert back to. Anyway when things break catastrophically, and they will, give yourself an hour to fix it, and then just start again. It reinforces install procedures, you'll have an idea on how you could have done it better anyways, and it's just not worth the heart ache.