How to host more than one spaces

I just created my first space working and hosted on a server via a docker, but how I can add more than that? Should i run separate docker instances for each or I can run both in one docker on different ports?

Right now SilverBullet is indeed single tenant. To host multiple space you have to run multiple containers on different ports.

1 Like

You could avoid different ports if you place them all behind reverse proxy like caddy and just let caddy connect to each of the instance’s own ip and port.

1 Like

Can I run a reverse proxy on the same server, The using different ports is not a big deal for me at all. It is just that I don’t want to waste my VPS resources and run it as light as possible.

I also run multiple on a single server:

Nginx (reverse proxy) on port 443 (HTTPS) redirects to the docker containers on ports 20001 and 20002 (or whatever ports you host them on).

Edit: all on a single IP, but with multiple subdomains so the reverse proxy knows what to route where. If SilverBullet also supports being hosted on a subpage (e.g. 123.456.789/sb1 for instance 1 and 123.456.789/sb2 for instance 2) then you can also do it without multiple (sub)domains.

So you have just server/VPS but use mutliple IPs with reverse proxy, right?

That’s one way to do it, another is to host everything on a single IP and just use different ports.

cool, I don’t have any issue with that, i don’t need this , but i like to learn and try stuff . so I may set such a setup just to learn how to setup a revers proxy (I suppose people use nginx for it).
On kinda off topic question, is there a way to make silverbullet use normal wikilinks (as oppose to full path links) . I always add an id to myfile name to make them unique. I want to publish some of my notes from my obsidian vault via SB, I think I need to change my notes before moving them to SB , but I think the wikilink issue is the most problomatic one. The others are not going to break anything. I would love to see Obsidian Github md flavored callout support in the future as I use them a lot

The question is who defines what “normal” means. There’s no standard for this, it’s not part of Markdown.

Obsidian’s system is a bit problematic in my view. My understanding is that by default it uses just the last bit of the path, e.g. when you link to People/John the link will be [[John]]. However, when there are more pages in different folders named John it will start using absolute links, like [[People/John]]. I suppose that works (although it will result in a bunch of updating of links when you start to do this a lot), but I prefer the simplicity of simply always using the full paths. At some point I considered switching to relative links, but that also can become messy. When links live preview, you’ll only see the last part anyway, so visually it doesn’t matter much. The problem is of course compatibility with Obsidian, but I’m not sure everybody should adopt a mechanism they don’t really think is right.

Yeah , I understand what you are saying, I think even in obsidian it is not forced on the user (using both filename or full path work). But it is a nice option to have I tend to use folders to organize my notes (as a kinda backbone I can always fallback to when reorganizing) and getting some really long paths as it grows which is problomatic in notes. As for issue of uniqueness, the problems is to simply adding an id to every note, i use base58 converted unix timestamps like this “3dpjXz” it is both short and unique, and one can always use alias for the note to remove the ugly bit from the sigh. I think it best works as a sort of addon tho. I agree that keeping it light and simple is very important. I am still not sure what I am going to do with it. But it is my next step in moving my notes to SB so I am asking question hopeful to find the best solution to it.