I’m interested in setting up my own instances for Lemmy, Mastodon, and Matrix.
Can I use the same https://domain.tld for all of them without any subdomains?
For example:
[email protected]
[email protected]
[email protected]
Will this work across all of my self-hosted instances, or do I need to append a subdomain for each, e.g., [email protected]?
All those services use a protocol named WebFinger that allows for having the servers in different domains but showing the users as being in a main domain. For example, my self-hosted Synapse server is at matrix.domain.tld, but my users are all like [email protected].
Unfortunately I don’t really know how to set it all up manually, I just let Yumohost take care of managing it.
You are able to host all these services and more on the same domain. I do a similar thing with different services at different subdomains. I don’t believe the
username@
portion can help point to different services, that syntax is usually associated with email addresses.I think the best way to go about it would be having different subdomains such as
lemmy.domain.tld
,matrix.domain.tld
, etc.
To accomplish that, I have a wildcard subdomain point to my server, my reverse proxy (Caddy) handles figuring out which subdomain maps to which service on top of handling TLS certificates for me.Good to know and I was hoping that’s the case. As soon as my new domain resolves I’m going to install lemmy, matrix, and funkwhale.
Are you running all of yours in containers?
No you can’t. One way or another your request from your browser that have to reach (let’s say) mastodon will have to go through the web server then to the mastodon backend. Your request reaches domain.tld and your reverseproxy will send the traffic to the corresponding service… But you have 3 services answering to domain.tld. You won’t be able to get anywhere, or maybe to the first service where your reverse proxy matches but nowhere else. I don’t even know if a reverse proxy will allow to start with that kind of configuration. You’ll have to use subdomains, you’re not even (always) allowed to use subdirs (like domain.tld/lemmy) sometimes.
Regardless of configuration, you still need to access the instance from mastodon.mydomain.tld or lemmy.mydomain.tld, but you can configure the Mastodon to use @[email protected] as its identifier by setting
WEB_DOMAIN
tomydomain.tld
.Mastodon documentation on the topic: https://docs.joinmastodon.org/admin/config/#web_domain