I'm self-hosting Obsidian as described below and it works really well. The syncing happens automatically in the background and I rarely encounter conflicts. I'd highly recommend it! https://avidandrew.com/elevate-your-note-taking-with-obsidian.html
garibaldi
The setup I'm describing would just be incus running on the Debian host. You'd then spin up a VM with incus and run Docker Swarm inside the VM. Yes, there's a little bit of overhead with running the VM, but it's pretty minimal and makes it a lot easier to backup your whole server (since it's a VM) verses trying to backup a physical server.
You can run all of your containers in this incus VM. Yes, you could just run containers on the host but this setup makes it easier to keep everything self-contained IMO. Also, maybe you'll have a need to do something in the future that can't run in a Linux container (e.g. a FreeBSD server), so having the ability to spin up VMs and not only containers is useful
I would think of Incus and Proxmox as equivalent - both can run containers and VMs. I like the idea of 3 incus servers each with a VM in Docker Swarm mode for running your docker services. Then if you have additional services that aren't a good fit for docker, you can spin them up as separate containers or VMs in incus as needed
This is what I would recommend too - QEMU + libvirt with Sanoid for automatic snapshot management. Incus is also a solid option too
I've been meaning to write a guide like this but haven't had a chance to complete it yet. In short, I'd recommend setting up an Ubuntu Server instance on some old hardware and using incus with ZFS to setup a separate container or VM for each service you want to run: https://linuxcontainers.org/incus/introduction/
This way, if something doesn't work out, you can just delete the container or VM. It also makes it easy to make snapshots or backups before you make a change (e.g. perform an upgrade) so you can easily roll back.
You can even try incus online (see the above link) to get an idea of how it works.
What about incus, the LXD fork, with the webui? Incus is so simple/logical for managing both VMs and containers (and you can run docker inside of them) and the webui lets you manage it from a browser if desired
I use Obsidian - it's phenomenal! https://avidandrew.com/elevate-your-note-taking-with-obsidian.html
Rather than a cheap VPS, what about hosting a reverse proxy on fly.io, something like this? https://github.com/AnimMouse/frp-flyapp
I wrote a guide with a few options: https://avidandrew.com/elevate-your-note-taking-with-obsidian.html
I personally use SyncThing with the SyncThing-Fork app now