Hey, I have to „draw“ or make notes of my selfhosting stuff. It runs so smooth that I sometimes really forget where a service is running or how to reach the web-Interface.

For sure I have a password- and link-manager, but I would like another independent note with the structure of my selfhosting.

Usually I use Joplin. Is there a plugin that shows me a kind of a map?

Or are there other apps - maybe wikis - that do it much easier/better than that?

How do you document your selfhosting?

  • aard@kyu.de
    link
    fedilink
    English
    arrow-up
    19
    ·
    5 months ago

    Everything is deployed via ansible - including nameservices. So I already have the description of my infra in ansible, and rest is just a matter of writing scripts to pull it in a more readable form, and maybe add a few comment labels that also get extracted for easily forgettable admin URLs.

    • moddy@feddit.deOP
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      2
      ·
      5 months ago

      That sounds to complicate for me. I am still a beginner.

      • bjornsno@lemm.ee
        link
        fedilink
        English
        arrow-up
        5
        ·
        5 months ago

        You should definitely figure out some infra as code system now while it’s manageable. Normally I’d recommend docker-compose as it’s very easy to learn and has a huge ecosystem, but since you’re using proxmox you might need to look at ansible like the other commenter said. Having IaC with git makes it so much easier to test new stuff, roll changes back, and all that good stuff, in addition to solving your original problem of forgetting what is running where.

        Just find the simplest IaC solution possible. Unless you are gunning for a job in infrastructure you don’t need to go into kubernetes or terraform or anything like that, you just need something reproducible that you can easily understand and modify.

        • aard@kyu.de
          link
          fedilink
          English
          arrow-up
          3
          ·
          5 months ago

          Unless you are gunning for a job in infrastructure you don’t need to go into kubernetes or terraform or anything like that,

          Even then knowing when not to use k8s or similar things is often more valuable than having deep knowledge of those - a lot of stuff where I see k8s or similar stuff used doesn’t have the uptime requirements to warrant the complexity. If I have something that just should be up during working hours, and have reliable monitoring plus the ability to re-deploy it via ansible within 10 minutes if it goes poof maybe putting a few additional layers that can blow up in between isn’t the best idea.

          • bjornsno@lemm.ee
            link
            fedilink
            English
            arrow-up
            3
            ·
            5 months ago

            Oh for sure for sure. I just know that a lot of people use their homelab to learn skills that they can put on their resume when looking for a job. It’s totally fair to over engineer your self hosting setup if that’s your goal.

            • aard@kyu.de
              link
              fedilink
              English
              arrow-up
              2
              ·
              5 months ago

              I was referring to work setups with the overengineering - if I had a cent for every time I had to argue with somebody at work to not make things more complex than we actually need I’d have retired a long time ago.

  • Evotech@lemmy.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    edit-2
    5 months ago

    If I have to draw diagrams, I use D2 https://d2lang.com/

    It’s a very simple to use code to diagram language.

    It has plugins for vscode and obsidian.

    It’s open source that you can run locally, with the exception of their proprietary visualization engine. But I don’t use that one, just use ELK.

    • moddy@feddit.deOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      5 months ago

      This looks great! I will try Zabbix first! More than I expected. Thank you

  • antsu@lemmy.wtf
    link
    fedilink
    English
    arrow-up
    7
    ·
    5 months ago

    My stuff is all in docker-compose with a stack/service structure, so listing it is as simple as running tree, and reading the individual YAML files if I need in-depth details.

    • N0x0n@lemmy.ml
      link
      fedilink
      English
      arrow-up
      4
      ·
      5 months ago

      KISS ! That’s the way I’m doing it. Although it kinda gets more difficult to keep track of every docker image update after you have a dozen containers.

      Thinking of something that could keep track and give me a nice notification about the changes and give a link to the github page before updating the container.

        • N0x0n@lemmy.ml
          link
          fedilink
          English
          arrow-up
          3
          ·
          5 months ago

          Thanks :)) I did tried it out a few month ago. It works as expected, but I was looking for something with a nice webUI wich pulls the whole changelog before updating a container.

          An AIO web interface that give all the changes and expected bugs or issues. I know there isn’t something like that… That’s why I just look out for github notifications with an RSS feed and read through all the changes/issues before doing any updates.

  • rand_alpha19@moist.catsweat.com
    link
    fedilink
    arrow-up
    4
    ·
    5 months ago

    I use Cockpit to manage my system and containers and Dashy as a browser dashboard. It’s similar to Heimdall but more minimal.

    I also run Otterwiki and I’m planning on documenting my setup, but I haven’t got around to it yet.

  • badlotus@lemm.ee
    link
    fedilink
    English
    arrow-up
    4
    ·
    5 months ago

    I use Netbox. It’s built by the team at Digital Ocean for managing their infrastructure. It can run in a docker container for easy management and compatibility. You can use as few or as many features as you need. There are a lot of native features and if there’s something missing you can extend functionality with plugins. I use the plugin netbox-topology-views to visualize my physical and logical network maps. This may be overkill for most home labs or home networks.

    Netbox GitHub

    Netbox-docker GitHub

    • moddy@feddit.deOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      5 months ago

      I will use that for documenting further stuff. If Zabbix works a few screenshots from there should explain a lot but everything else I would add to the wiki.

      • DeltaTangoLima@reddrefuge.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        5 months ago

        I’ve written my wiki so that, if I end up shuffling off this mortal coil, my wife can give access to one of my brothers and they can help her by unpicking all the smart home stuff.

  • tuhriel@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    3
    ·
    5 months ago

    I’m coding them down as plantuml network code and render them using a selfhosted plantuml Server.

    In the end my whole admin guide resides in a obsidian notebook as markdown There is even a plugin that renders plantuml code within obsidian

    The nice thing: everything is just code and can be moved to any other tool (had my documentation in a local gitlab repo, but I swapped gitlab out for gitea)

  • SunDevil@lemmy.ml
    link
    fedilink
    English
    arrow-up
    3
    ·
    5 months ago

    I use Heimdall and Portainer myself, and I’d recommend them both. Portainer is for keeping a visual on Docker and/or Kubernetes containers, while Heimdall acts as a “home page” / front end for your various web GUIs (incl. Portainer).

    • moddy@feddit.deOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      5 months ago

      Hmmm, I have a few dockers, but most stuff is running in lxc‘s (Proxmox). Btw: I tried Heimdall (or Homar?) but I had to enter all services by hand. Is there a way or an app to automate that?

      • SunDevil@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        5 months ago

        Is there a way or an app to automate that?

        Sadly, not to my knowledge. It’s an app-by-app process. I could see an Ansible play or similar potentially fulfilling such a role, but I’m not aware of any existing projects.