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.

  • thayer@lemmy.ca
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    14 days ago

    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.

  • vegetaaaaaaa@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 days ago
    • ansible playbook for automated/self-documenting setup
    • for one-off bugs or ongoing/long-term problems, open an issue on my gitea instnce and track the investigations and solutions there.
  • zelifcam@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 days ago

    OPNSense router handles auto SSL certificate renewals, Unbound (DNS) and HA Proxy ( for reverse proxy ).

    Gitea instance for all of my docker-compose configs and documentation.

    Joplin server and Joplin clients for easy notes available on all my devices.

    • Hellmo_luciferrari@lemm.eeOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      15 days ago

      I think Traefik is going to be what I investigate using. However the last time I tried, I was a little lost. I will have to comb over the documentation better this time.

      • Earth Walker@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        15 days ago

        Traefik is powerful and versatile but has a steep learning curve. It also uses code to control its configuration which is a bonus for reliability and documentation as discussed elsewhere ITT. Nginx proxy manager is much simpler and easier to use, may be a good one to get started with, but lacks the advantages of traefik described above. Nginx proxy manager does support SSL cert automation.

  • rand_alpha19@moist.catsweat.com
    link
    fedilink
    arrow-up
    0
    ·
    15 days ago

    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@lemm.eeOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      15 days ago

      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@moist.catsweat.com
        link
        fedilink
        arrow-up
        0
        ·
        15 days ago

        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.

  • schizo@forum.uncomfortable.business
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 days ago

    I’m a grumpy linux greybeard type, so I went with… plain text files.

    Everything is deployed via docker, so I’ve got a docker-compose.yml for each stack, and any notes or configuration things specific to that app is a comment in the compose file. Those are all backed up in a couple of places, since all I need to do is drop them on a filesystem, and bam, complete restoration.

    Reverse proxy is nginx, because it’s reliable, tested, proven, works, and while it might not have all those fancy auto-config options other things have, it also doesn’t automatically configure itself into a way that I’d prefer it didn’t, either.

    I don’t use any tools like portainer or dockge or nginx proxy manager at this point, because dealing with what’s just a couple of config files on the filesystem is faster (for me) and less complicated (again, for me) than adding another layer of software on top (and it keeps your attack surface small).

    My one concession to gui shit for the docker is an install of dozzle because it certainly makes dealing with docker logs simple, and it simplifies managing the ~40 stacks and ~85 containers that I’ve got setup at the moment.

    • Hellmo_luciferrari@lemm.eeOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      15 days ago

      I appreciate that mentality though. When things break, if your understanding of your setup is there, it’s less to deal with.

      I am forgoing the Portainer route this time. I am going to strictly use Docker Compose for my containers. I had too many issues with Portainer to consider using it.

      For reverse proxy, I just need/want it for simple ip:port to sub.domain.lan type addresses locally. Anything I need outside of my home will be tunneled through wireguard.

      I always quite liked Dozzle. It was handy, and has helped me comb through logs in the past.

      • schizo@forum.uncomfortable.business
        link
        fedilink
        English
        arrow-up
        0
        ·
        15 days ago

        Yeah, exactly: if you know how it works, then you know how to fix it. I don’t think you need a comprehensive knowledge about how everything you run works, but you should at least have good enough notes somewhere to explain HOW you deployed it the first time, if you had to make any changes as well as anything you ran into that required you to go figure out what the blocking issue was.

        And then you should make sure that documentation is visible in a form that doesn’t require ANYTHING to actually be working, which is why I just put pages of notes in the compose file: docker doesn’t care, and darn near any computer on earth made in the last 40 years can read a plan text file.

        I don’t really think there’s any better/worse reverse proxy for simple configurations, but I’m most familiar with nginx, which means I’ve spent too long fixing busted shit on it so it’s the choice primarily because, well, when I break it, I already probably know how to fix what’s wrong.

  • peregus@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 days ago

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

  • tvcvt@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 days ago

    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.

  • traches@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    15 days ago
    • 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

  • TCB13@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 days ago

    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.

  • Strit@lemmy.linuxuserspace.show
    link
    fedilink
    English
    arrow-up
    0
    ·
    14 days ago

    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. :)

    • Hellmo_luciferrari@lemm.eeOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      14 days ago

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

      • theRealBassist@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        12 days ago

        This might be a bit late, but from my perception Traefik has a touch more of a learning curve, but it integrates much better with solutions like Authlia/Authentik and Prometheus than Caddy does.

        I might be wrong, I’ve never used Caddy, but that’s my perception.

    • bjornsno@lemm.ee
      link
      fedilink
      English
      arrow-up
      0
      ·
      14 days ago

      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.

  • cvf@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    14 days ago

    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.

  • vahirua@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    15 days ago

    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/