Welcome to Incremental Social! Learn more about this project here!
Check out lemmyverse to find more communities to join from here!

Homelab Organization

Hi all!

So I want to get back into self hosting, but every time I have stopped is because I have lack of documentation to fix things that break. So I pose a question, how do you all go about keeping your setup documented? What programs do you use?

I have leaning towards open source software, so things like OneNote, or anything Microsoft are out of the question.


Edit: I didn't want to add another post and annoy people, but had another inquiry:

What ReverseProxy do you use? I plan to run a bunch of services from docker, and would like to be able to reserve an IP:Port to something like service.mylocaldomain.lan

I already have Unbound setup on my PiHole, so I have the ability to set DNS records internally.

Bonus points if whatever ReverseProxy setup can accomplish SSL cert automation.

fangleone2526 ,

I'm writing documentation in obsidian. I then expose it to the web so I can access from all my devices and share to others with quartz. Everything is markdown. It's tunneled out of my network with cloudflare tunnels, which do handle SSL for me.

HumanPerson ,

I use nginx for reverse proxy. You can get certbot working to automate ssl fairly easily. There is a learning curve, but most services I use have documentation for hosting their stuff with it.

Artemis , (edited )

Personally I use Linkwarden for keeping snapshots of websites as well as a bookmark manager and Memos for a simple note-taking app. Both can be installed on mobile as PWAs, so it makes it easier to access on-the-go.

I'm using Nginx Proxy Manager, which I highly recommend for new users due to how simple it is get set up and running! NPM renews SSL certs automatically before they expire as well (afaik). You just gotta make sure that your different Docker containers' ports don't collide with each other.

Hellmo_Luciferrari OP ,

Today I learned about Linkwarden, and I am so excited to check it out. Thank you!

NPM I did use, however it was ultimately the catalyst as to why I quit homelabbing. But when it did work, it was simple even for SSL cert renewal.

cvf ,

My documentation problem was largely fixed by using Nixos. The actual OS instances are self-documenting that way.

As far as the documentation for the network setup itself goes, a simple wiki does the rest of the trick for me.

Hellmo_Luciferrari OP ,

I still want to get familiarized with NixOS and the concepts behind it. Just haven't taken the time.

thayer , (edited )

I write everything in markdown, and I mean just about everything. Tech notes, recipes, work procedures, shopping lists...everything. If you check my comment history from today, you can see a quick example of the kind of tech notes I keep (firewalld in this case).

I keep all of my plain text files synced across multiple devices using Syncthing. For desktop editors, I use mostly vim and VSCodium (though Kate is nice too), and I use Markor on Android. This workflow has been highly efficient for many years now, and I no longer waste time constantly reviewing the latest note-taking app.

Strit ,
@Strit@lemmy.linuxuserspace.show avatar

My documentation is a folder with the docker compose files I am using. And some notes in Nextcloud Notes if needed.

My reverse proxy is Traefik, since it's docker aware. :)

bjornsno ,

Came to write basically this. I would try caddy but my compose file is 600 lines long now and half of that is traefik labels, I can't be arsed with the migration.

Hellmo_Luciferrari OP ,

Traefik or Caddy are the 2 I am bouncing back and forth between currently.
I may spin up a nextcloud instance.

TCB13 ,
@TCB13@lemmy.world avatar

So I want to get back into self hosting, but every time I have stopped is because I have lack of documentation to fix things that break. So I pose a question, how do you all go about keeping your setup documented? What programs do you use?

Joplin or Obsidian? Or... plain markdown files with your favorite text editor.

brownmustardminion ,

I use Joplin and it works great for this exact thing. Anytime I discover a new command that fixes something I’ll throw it into my Joplin notebook. “New Server Cheatsheet” goes to list in order common operations and commands for setting up SSH, UfW, making a non-root user, configuring wireguard, etc. I have hundreds of notes by now and they’re easily found via search bar.

SeeJayEmm ,
@SeeJayEmm@lemmy.procrastinati.org avatar

Wiki.js
Nginx Proxy Manager.

traches , (edited )
  • caddyserver for reverse proxy
  • docker-compose for ~75% of documentation
  • logseq for notes, though I don’t keep much.

Docker and docker-compose are nice because every service you want to run follows the same basic pattern. You don’t need much documentation beyond the project docs and the compose files themselves

Edit: caddyserver can do automatic certs, even behind a firewall if you set up the api call method. Varies by registrar

peregus ,

I use BookStack and with Node Red I export to PDF the books as soon as pages get updated, so if everything goes feet up, I have all the documentation in PDFs (locally and automatically uploaded to a free DropBox account, still done with Node Red).

Hellmo_Luciferrari OP ,

I may have to check out BookStack. I dig the looks of it.

vahirua , (edited )

I'm adding documentation about what I do in Joplin and I'm using Nextcloud to keep it synced.

For reverse proxy I use Nginx Proxy Manager for its simplicity. I really don't need anything more fancy.. https://nginxproxymanager.com/

tvcvt ,

Dokuwiki (dokuwiki.org) is my usual go-to. It’s really simple and stores entries in markdown files so you can get at them as plain text files in a pinch. Here’s a life lesson: don’t host your documentation in the machine you’re going to be breaking! Learned that the hard way once or twice.

For reverse proxies, I’m a fan of HAProxy. It uses pretty straightforward config files and is incredibly robust.

hendrik , (edited )

I've been using YunoHost for some time. Cosmos seems good, too. Both do most of the stuff for you and should come with documentation. I think that's the way to go if you can't set it all up yourself, or lack time to maintain it.

I've also used Docker containers and plain Debian. I use NGinx as a reverse proxy.

I document things in text files (markdown). At some point it'd like to upload them with something like mkdocs or to a wiki. But since it's just me, having them just sitting in a directory on my laptop is fine.

Use something that's super accessible so you'll actually use it. I often just dump random thoughts or commands I executed into the textfiles and I have my text editor open all the time anyways. And then on the server I eiter use Ctrl+R and search through the shell history, or search in my documents. Doesn't need to be fancy, grep -rni "keyword" does it for me.

rand_alpha19 ,

You could try Logseq, it's like Obsidian but open source. I use Obsidian for most notes and I also have a personal wiki built with Otterwiki.

I use NGINX for my reverse proxy, you could check out NGINX Proxy Manager which uses Certbot to automate the SSL certificates.

I've heard a lot of people also like Caddy and Traefik. Can't remember which is easier to use, maybe Caddy.

Hellmo_Luciferrari OP ,

I will likely dabble with Logseq.

I used NGINX Proxy Manager for a while, then had some issues that ultimately killed my homelab setup, so not sure that I want to go down that route again, or if I want to investigate Caddy, Traefik, or another.

rand_alpha19 ,

Yeah, I could never get NPM to work right on my system either. I use the NGINX Docker image and set up my certs manually.

If I were to do it all over again today, I would probably go with Caddy since it now has a bunch of that stuff built in with automatic HTTPS by default and the basic reverse proxy setup is literally 2 lines of code.

Decronym Bot , (edited )

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
DNS Domain Name Service/System
Git Popular version control system, primarily for code
HA Home Assistant automation software
~ High Availability
HTTP Hypertext Transfer Protocol, the Web
SSH Secure Shell for remote terminal access
SSL Secure Sockets Layer, for transparent encryption
nginx Popular HTTP server

6 acronyms in this thread; the most compressed thread commented on today has 12 acronyms.

[Thread for this sub, first seen 2nd Jul 2024, 16:15]
[FAQ] [Full list] [Contact] [Source code]

  • All
  • Subscribed
  • Moderated
  • Favorites
  • selfhosted@lemmy.world
  • random
  • incremental_games
  • meta
  • All magazines