view the rest of the comments
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!
I went with Debian and I use Docker for containers. I considered Proxmox, but I didn't end up trying it. PiHole is a good application for the Pi Zero (I have an early generation Pi dedicated to running PiHole), but you could also run it on the Beelink.
I strongly recommend you download Obsidian and keep hyperlinked notes on everything you do and links to every tutorial/resource you end up using.
Have a place to keep all the passwords your services will end up needing. A password manager is the best option. Make the password on your admin account on Debian (or whatever) easy to remember and enter, since you'll need to sudo a lot.
If the Beelink comes with a copy of Windows installed, you can recover the key from within Linux with the following command:
sudo strings /sys/firmware/acpi/tables/MSDM
Then you have a spare Windows key should you ever need one.
+10 for keeping notes.
Yep, even that temporary thing, write it down. Usernames & passwords go in KeePass - with descriptive notes in there too
With how easy it is to Massgrave to get a valid Windows key, I personally don't even consider backing up windows keys lol.
Not sure if many people do what I do, but instead of taking notes I make commented functions in bash. My philosophy is: If I can't automate it; I don't understand it. After a while you build enough automation to build your workstations, your servers, all of your vms and containers, your workflows, etc, and can automate duplicating / redeploying them whenever required. One tarball and like 6 commands and I can build my entire home + homelab.
Can you elaborate on this a little more, sounds interesting and reinforcing?!
Sure. I have an r630 that is configured as an NFS server and a docker host called vacuum. There is a script called install_vacuum.sh that with a single command, can build the server to my spec from a base install of Ubuntu 24.04. it has functions to install base packages from repositories, add new repositories, set up users, create config files for NFS, smb, fstab, crontab, etc... once an NFS server exists on my network, any other server could be my docker host. My docker host is set up from a script install_containers.sh. as with before, it does all the things to get me a basic docker host, firewalled, and configured for persistence via my NFS server. It also has functions to create and start docker containers for all of my workflows (Plex, webserver, CA, etc), and if those containers don't exist, it will build a docker image for said workflow based on a standardized format (you guessed it) bash build script for the containers. There is automation via cron on whatever host runs docker to build and update the containers once a week, bare-metal servers update themselves nightly, rebooting when necessary via unattended-upgrades.
Basically, you break everything down into the simplest function possible, have everything defined via variables in shared configurations that everything sources before running, and you have higher and higher level functions call other functions until you have a single function that cascades into a functioning system. Does that make sense?
You should check out Ansible
I use ansible on one of my side projects; I use puppet at work. It's the same reason I use raw docker and not rancher+rke2... it's not about learning the abstractions; it's about learning the fundamentals. If I wanted a simple abstraction I'd have deployed truenas and Linuxsserver containers instead of Taco Bell programming everything myself.
I want to be here. Jealous
Have you started collecting your notes into scripts?
That too for keeping notes is gold. I've had the lack of them bite me in the ass as recently as 3 days ago.
Thanks for the suggestion on the note app.
Not to mention the windows key deal. Awesome