this post was submitted on 18 May 2025
134 points (100.0% liked)

Selfhosted

46685 readers
381 users here now

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:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. 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.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Hello, how do you document your home lab? Whether it's a small server or a big one with firewall and more nodes. I have a small pc with Proxmox and there I have a VM with OpnSense. After I've entered my VPN as a interface in OpenSense, I noticed that I slowly lose the overview with the different rules that I have built in my firewall. And I know that my setup is relatively easy in comparison to others here in this community. I want to have a quick Overview at the various VMs, like the Lxc container, Docker containers that I have in this and the IP addresses that I have assigned to them. I search for a simple an intuitiv way for beginners.

(page 2) 18 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 6 days ago

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.

[–] [email protected] 9 points 6 days ago (2 children)

It's really a wild growth over the years. My current approach is twofold. Netbox to manage devices/VMs and associated info with service deployments using Ansible. You can use the info from Netbox as an Ansible inventory directly.

Previously I tried network diagrams (too low detail) and spreadsheets (terrible to modify) to document machines. And for serviced I'd have an install page on my wiki (apologies, the codeblocks are somewhat broken atm)

[–] [email protected] 3 points 6 days ago (1 children)

I run Netbox for documentation only. But your approach is what I actually wanted to do, if I just had plenty of time.

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 54 points 6 days ago

I download the YouTube tutorials I followed, upload them to my UAT Jellyfin server, and then when my server is having issues I can't get to the videos!

A flawless system really

[–] [email protected] 31 points 6 days ago (1 children)

I build my infrastructure with the terraform, Ansible and helm charts. The code is it's own documentation as well as comments in that code explaining why I've done things if it's not obvious.

[–] [email protected] 13 points 6 days ago

This really is the way.

It goes beyond documentation too - it allows me to migrate to new hosts or to easily automate upgrading the OS release version.

I have a docusaurus site for my homeland and I have ansible and terraform generate files for the docs so I don’t have to record anything. Some of the stuff I note down:

  • DNS leases
  • General infra diagrams
  • IP info
  • Host info
[–] [email protected] 2 points 6 days ago* (last edited 6 days ago)

Not much, really. I do comment changes to config files and such.

[–] [email protected] 7 points 6 days ago

I have it in a git repo, broken down by the nodes and vps names. In each of these folders is a mixture of Ansible playbooks, docker compose or just markdown files with the descriptions. Some is random stuff - my VPS allows the export of the cloud firewalls as JSON for instance. All the secrets needed by Ansible are in an Ansible vault, the rest in KeePass.

[–] [email protected] 16 points 6 days ago* (last edited 6 days ago)

I have NixOS running on mine and I write everything in comments in my configuration.nix. Usually I'll write notes about why I set a certain option above the line where I do it but I also have a section at the start that describes anything to be aware of if I'm moving this configuration to another machine. For example “This assumes a drive is mounted on /mnt/backup0

[–] [email protected] 7 points 6 days ago

I just try to make everything as self documented as possible. Eg. no stray scripts, everything is either implemented in other software (eg. my main wireguard peer in systemd-networkd, without any non-obvious external dependencies) or tracked as a part of an arch pkg with a simple PKGBUILD. I usually either have very simple nets (eg. my VPN's net only consists of four peers, in the order main - secondary - laptop - phone) or leave it to DHCP and SLAAC. I try to avoid using ports for local servers as much as possible and use unix sockets. Stuff like LVM/Luks pretty much documents itself.

[–] [email protected] 11 points 6 days ago* (last edited 6 days ago)

A combination of Logseq (what, why, how) and KeePass for IPs and passwords (obviously)... I use the heirarchy in Keepass to show a device and then the services on it and then their configs, ie

  • Hypervisor1
    • VM1
      • root user details
      • that webUI details
    • VM2 (Etc)

I used to do Visio drawings, but they were always out of date.

[–] [email protected] 125 points 6 days ago (4 children)

Jokes aside, I do keep some harder to remember stuff written down in a README.md in my repo, but mainly most things are undocumented

[–] [email protected] 7 points 6 days ago

"Shit, i hope i remeber the key words i searched for"

[–] [email protected] 19 points 6 days ago* (last edited 6 days ago) (5 children)

I operate on the philosophy that it is better for me to relearn things than lean on old documentation that may no longer be accurate/relevant.

The best way to implement a safe connection to my home lab today might not be the safest way tomorrow.

Old dog, new tricks, etc.

Also! Your documentation is an attackers wet dream.

NB: this philosophy doesn't scale.

[–] [email protected] 24 points 6 days ago (1 children)

Security by obscurity, baby!

load more comments (1 replies)
load more comments (4 replies)
[–] [email protected] 4 points 6 days ago

Guilty too. There are names on router- and switch interfaces. Servers get fixed IP from dhcp so is in the note field there too. That's about it

load more comments (1 replies)
[–] [email protected] 15 points 6 days ago (1 children)

I just created a note in Obsidian with the Excalidraw plugin.

[–] [email protected] 3 points 6 days ago

I use obsidian and ezcalidraw also, I didn't realize we can put one in the other

load more comments
view more: ‹ prev next ›