The whole deployment is done via ansible, so the ansible source is my documentation.
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.
-
Posts here are to be centered around self-hosting. Please ensure it is clear in your post how it relates to self-hosting.
-
Don't duplicate the full text of your blog or git here. Just post the link for folks to click.
-
Submission headline should match the article title.
-
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!
fuck yeahhh man that sounds like the absolute best. I'm really looking forward to the time when i get to learn Ansible
Here: https://wiki.gardiol.org/
Based on Dokuwiki and my own experience. Mostly started to track what and why I do stuff, and published because I truly believe in a free internet.
Every time I set up anything, I do one of two things:
-
If it's container based, it gets a commented docker compose file in my custom orchestration
-
If it's on a host system, the changes are scripted and commented in a setup script, which are run on new machines. If the acrit is specific to one machine, it is configured as such
I find in-setup docs to be best for a home lab, plus if I have to replace hardware, it's fast.
Fun fact, I do it for laptops and desktops, too.
this is basically what i ended up doing to - glad to see my approach verified somewhat ha ha!
but yeah, in general whenever i make a change / add new service, i always try and add those steps to some sort of setup.sh / docker-compose
Yea comes in super handy when you always want dropbear SSH for remote unlock, or making sure both RAID disks boot, etc.
I do it for all my software setup, too. A shell script for each, then a for loop that asks to run each. But I also made https://github.com/fmstrat/gam, so maybe I just like overkill bash.
I started to put it all in my selfhosted bookstack and that works well for me. I also automated a good part of my setup with Ansible, so I can just check how the Playbook did things if I forgot.
Now firs of all sorry for necroposting, but i found this while searching. I use claude amd markdown/yaml and serena mcp. We use tmux and shard browser to gather facts. As a bonus i can explain my setup and choices and it will format out nicely
In gitlab.
In the terraform project that builds it. Or in the cinc.sh config that makes it go.
MD lets me add diagrams.
If it need documentation means things are over the line when comes to complexity and I should scale down / simplify. :)
Complexity and over-engineering are a serious problem, I really try to keep it as simple as possible so I don't have to waste time managing it, dealing with updates and potential security issues. Simple code/infrastructure breaks less and has less potential insecure points.