Hi there,

I would like to host my own Synapse server, but I am not sure where to start.

I would like to be able to use Nginx Proxy Manager as the reverse proxy and I’ve read that you can use example.eu for the username, while actually using a subdomain like matrix.example.eu?

Is there some good documentation out there and what would people recommend? I would like to run it in a container on Proxmox, but Docker could also be an option?

  • A lot of memory, and a lot of disk space.

    Synapse is the reference platform, and even if they don’t, it feels as if the Matrix team make changes to Synapse and then update the spec later. This makes it hard for third-party servers (and clients!) to stay compliant, which is why they rise and fall. The spec management of Matrix is awful.

    So, while suggestions may be to run something other than Synapse - which I sympathize with, because it’s a PITA and expensive to run - if you go with something else just be prepared to always be trailing. Migrating server software is essentially impossible, too, so you’ll be stuck with what you pick.

    Matrix is one of the worst-managed best projects to come out in decades.

  • ambitiousslab@lemmy.ml
    link
    fedilink
    English
    arrow-up
    7
    ·
    edit-2
    8 days ago

    I host Synapse using this playbook. I can highly recommend it - the instructions are very clear and detailed and ongoing maintenance is straightforward too (just git pull and redeploy, and 5% of the time modify a deprecated variable).

    As for how to delegate to a subdomain - that’s covered here. Basically - you set it up on matrix.example.eu and then have a “well known” file hosted at example.eu that tells other clients/servers where to look.

  • Shimitar@downonthestreet.eu
    link
    fedilink
    English
    arrow-up
    6
    ·
    8 days ago

    Why synapse?

    Its a good choice for max stability, but its by far the heaviest and most resource intense server out there, and probably overkill for a few user installation.

  • poVoq@slrpnk.net
    link
    fedilink
    English
    arrow-up
    4
    ·
    8 days ago

    Synapse has become open-core and the possible alternatives are either abandoned or are currently in a really unclear state. And due to how Matrix federation works, it is quite difficult to change anything later and if you are unhappy with the setup you have basically burned a domain and need to start fresh on another. If you just want a chat server I would rather suggest to set up a XMPP server with a Slidge.im Matrix bridge.

    That said: there are easy to use official Docker containers for Synapse, and you just need a redirect in your reverse-proxy for some sub-directories to put it on the same domain than something else. There are also some other, more complex ways to do it, but just redirecting the subdirectories is the easiest.

  • unexposedhazard@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    8 days ago

    If you want the new mobile client “element x” to work, you will need element-call on the server (a decentralized webrtc based call system). This currently only really works in combination with synapse, so i would go with synapse. Either the ansible playbook as mentioned by others, or look into the still quite new ESS community edition.