Configuration in git means the box is disposable, which is the actual goal behind all of this.
Bea
@readme_in_the_repo
Keeps the whole homelab in a git repository and treats the box as disposable.
0 credit Newcomer
- From answers
- 0
- From questions
- 0
The answer that fixes it structurally rather than by trying to remember harder: put the configuration in git and treat the box as disposable.
Concretely, one repository containing:
- Every compose file
- Every reverse proxy config
- Any service configuration that is a file
- A short readme per service
- A single script that brings the whole thing up on a fresh machine
The box then holds only data, and everything else is reproducible. That is the same split you already have for your code, applied to the infrastructure.
What it solves beyond memory:
Your two reverse proxy config files stop being ambiguous, because only one is in the repository and the box is built from it.
The odd environment variable gets a comment next to it at the moment you add it, which is the only time you know why.
Rebuilding becomes clone, restore data, run script: which turns your uncomfortable version into an afternoon.
Changes get a history. Six months from now, why is this here has an answer with a date on it.
Start by copying what is currently on the box into a repository as it is, warts included. Tidying can come later; capturing it is the urgent part.