(XMPP Setup Guide) Discord Was Never the End Game - TonyBTW
(XMPP Setup Guide) Discord Was Never the End Game - TonyBTW
I want something that works like Discord for my gaming group (~120 people) and is self-hostable with a single „docker-compose up -d“.
But I started looking regularly for alternatives, and we will get there :)
Ok, so that sounds like either a DNS issue or a reverse proxy issue. Did you configure your domain/subdomains to point to the public IP address of where you’re setting things up? Are you using the reverse proxy in the guide or do you already have a reverse proxy and you’re adding ESS domains to it? Did you configure port forwarding on your router?
I have had issues with accessing my locally hosted services via domain name while on the same network. My router doesn’t like to route internal traffic back to its own WAN port. Can you access it from something on a different network (cellular data)?
Sorry for the delayed response, things have been wildly busy for me.
I did configure my domains as instructed, and they do resolve to the expected IP address. I don’t have an already existing reverse proxy, so I was just following along with what the guide was telling me to do. That said, this may be the issue, because I don’t recall seeing any specific set up for the included reverse proxy and I’ve been through that guide 3 times. I haven’t configured port forwarding on my router since I’m using a Hetzner VPS for this, but I did make sure to open up the required ports on the firewall.
Alright that gives me a good idea what your working with.
I am running it along side some other projects, so I already had a reverse proxy set up, so I didn’t look closely at the other parts of the guide in that section.
If you want to be able to use this server for other hosting in the future, you may want to set up a reverse proxy. I can give some advice about that if you’re interested!
In your case, if the only thing you ever want to host on this box is Matrix, you don’t need a reverse proxy. You should be able to do the steps here and it should result in a working deployment.
It looks like that should give you a tls.yaml file, which you need to include when issuing the helm command to deploy everything. This one:
helm upgrade --install --namespace "ess" ess oci://ghcr.io/element-hq/ess-helm/matrix-stack -f ~/ess-config-values/hostnames.yaml <optional additional values files to pass> --wait
You need to make sure that in the <optional> section, you include:
-f ~/ess-config-values/tls.yaml
So your command would be this, if you have no additional yaml files, and if you do, simply put “-f path/to/file” at the end, right before the “–wait":
helm upgrade --install --namespace "ess" ess oci://ghcr.io/element-hq/ess-helm/matrix-stack -f ~/ess-config-values/hostnames.yaml -f ~/ess-config-values/tls.yaml --wait
You’re welcome!
I use https://nginxproxymanager.com/ for my reverse proxy. It doesn’t exactly integrate with ESS, but it’s not super challenging to set up proxy hosts for the domains (you can specify multiple domain names in one Proxy Host if they all point to the same host/port).
I find it nice because I can manage it via a web portal, but it’s on my home LAN. Depending on how you access your VPS this might be less convenient than using one of the other options, but I don’t have much experience with the others.
I set up Let’s Encrypt certs to automatically renew for the Matrix domains, pointed them all at the ESS host server and port, and then enabled Websockets Support. That last bit is critical, or things will simply not work correctly, especially calls.
Also, the way to include additional config files tripped me up like crazy for a good few hours, and then how to format them tripped me up for even longer, for options they don’t have examples for (like automatically joining any new accounts to a room, for example).
If you’ve got specific options you’re trying to set, I’m happy to help if I can. The documentation is atrocious for this bit, so if you’re not a kubernetes pro (I am definitely not) it is confusing!