this post was submitted on 22 Jun 2024
3 points (100.0% liked)

Selfhosted

40149 readers
544 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 1 year ago
MODERATORS
 

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?

top 17 comments
sorted by: hot top controversial new old
[–] BeardedGingerWonder@feddit.uk 2 points 4 months ago

I kinda just hold it all in my head and fix stuff when I notice it's broken.

[–] aard@kyu.de 2 points 4 months ago (1 children)

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.de 0 points 4 months ago (1 children)

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

[–] bjornsno@lemm.ee 0 points 4 months ago (1 children)

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 0 points 4 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.

[–] pdavis@lemmy.world 1 points 4 months ago

I still use Dia Diagram Editor for most things. I just wish it was still being updated.

[–] Zachariah@lemmy.world 1 points 4 months ago

I’ve used https://draw.io (apparently https://app.diagrams.net/ now) before for this exact purpose. I mapped out network, devices, and services.

[–] trilobite@lemmy.ml 0 points 4 months ago* (last edited 4 months ago) (1 children)

This is an intersting thread because I read through the lines the concerns that many have about losing parts of their homelab. Something I too am concerned about. While I have learnt to put my data securely on NAS with docker compose (I.e. docker image runs on VM while data i s stored on NAS and nas dataset is mounted via NFS on VM), in still not clear ho I save the config on the docker container. Basicalky, if I want to move that docker image to a new VM, how do I go about it?

[–] Passerby6497@lemmy.world 1 points 4 months ago

As long as you have your config files and whatever data from the app (both should be mapped from the container to the host), just copy it to the new system and start your container.

I have all my config files on my nas, but too many of my apps run off dbs so I need to figure out a way to backup the local database folder so I can have the actual data on my nas as well as just the configs.

[–] constantokra@lemmy.one 0 points 4 months ago (1 children)

There's no forgetting where I have something hosted. If I ssh to service.domain.tld I'm on the right server. My services are all in docker compose. All in a ~/docker/service folder, that contains all the volumes for the service. If there's anything that needed doing, like setting up a docker network or adding a user in the cli, I have a readme file in the service's root directory. If I need to remember literally anything about the server or service, there's an appropriately named text file in the directory I would be in when I need to remember it.

If you just want a diagram or something, there are plenty of services online that will generate one in ASCII for you so you can make yourself a nice "network topology" readme to drop in your servers' home directory.

[–] daddy32@lemmy.world 0 points 4 months ago (1 children)

This is the approach I try to also follow. It also makes the process of restoration from the backups or migrating to different server much easier.

[–] constantokra@lemmy.one 1 points 4 months ago

Yeah, and I assume future me will be even dumber than present day me, so I try to make it really easy for him to find out what he needs to know.

Another good tip is to put timestamps and increase the length of your bash history. That way when I log in half a year from now I'll know what I was up to.

[–] model_tar_gz@lemmy.world 0 points 4 months ago* (last edited 4 months ago) (1 children)

I like draw.io for process diagrams.

[–] daddy32@lemmy.world 1 points 4 months ago

Draw.io is also totally open and is able to be integrated into many different tools - so chances are your tool of choice already has a plug in for it. For example, nextcloud does.

[–] antsu@lemmy.wtf 0 points 4 months ago (1 children)

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 0 points 4 months ago (1 children)

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.

[–] WeirdGoesPro@lemmy.dbzer0.com 1 points 4 months ago

Watchtower may be what you’re looking for.