May 14May 14 Matrix — All-in-One for UnraidSynapse + coturn + Element Web + Synapse-Admin in one container. What is this?A plug-and-play Docker image that bundles a full Matrix stack — Synapse homeserver, coturn TURN/STUN server, Element Web client, and Synapse-Admin — into one Unraid container. No manual config-file editing, no SSH into the container required: enter your domain and database credentials in the template, the container handles the rest.HighlightsSynapse — the reference Matrix homeservercoturn — TURN/STUN server for voice/video calls behind NATElement Web — the most-used Matrix web clientSynapse-Admin — admin UI for user/room managementAll four services orchestrated by a single s6-overlay initMulti-arch: amd64 + arm64Image: ghcr.io/junkerderprovinz/matrix:latest⚠️ Read this before you install — two prerequisitesThe container is plug-and-play, but two things outside the container must be set up correctly or Synapse will refuse to start.1. PostgreSQL must use the right locale. In your Postgres container console (psql -U postgres):CREATE USER admin WITH PASSWORD 'yoursecretpassword'; CREATE DATABASE matrix ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' TEMPLATE template0 OWNER admin;Any other locale and Synapse refuses to start. Full details in the README section 3.2. NPM Advanced config. Add this to your matrix.yourdomain.tld proxy host's Advanced → Custom Nginx Configuration:client_max_body_size 100M; proxy_read_timeout 600s;Without it, large media uploads will fail and long-polling sync will time out.RequirementsUnraid 6.10+An existing reverse proxy (NPM, SWAG, Traefik, …) on the same networkA PostgreSQL container (the template does not bundle one — by design)A domain you control with DNS access (for federation + TLS)~1 GB RAM idle, more if you federate with large roomsPosting a bug reportUnraid version + image tagWhether you're federating (server_name matches the public domain?)Output of docker logs --tail 300 matrixYour reverse-proxy type and the relevant proxy-host config (redact secrets)Postgres version + the exact CREATE DATABASE command you ranGitHub issues with the same info are also welcome: github.com/junkerderprovinz/matrix/issuesUnofficial community wrapper. Not affiliated with The Matrix.org Foundation or Element. Edited June 6Jun 6 by Junker der Provinz
June 20Jun 20 Would I be able to use a cloudflare tunnel or do I need to utilize a reverse proxy setup to access? Thanks in advance
June 21Jun 21 Author 23 hours ago, 01111000 said:Would I be able to use a cloudflare tunnel or do I need to utilize a reverse proxy setup to access? Thanks in advanceBoth work, you don't strictly need a reverse proxy.A Cloudflare Tunnel is fine for client access and means zero open ports. Two things to know: Cloudflare caps uploads at 100 MB (the README already uses 100M, so that lines up), and for federation you still need the .well-known delegation to 443 (section 6 in the README). Voice/video (TURN) is UDP and can't go through a tunnel or proxy, so forward those ports either way.A normal reverse proxy (NPM, what the README documents) is the cleaner option if you want federation plus bigger media. And if you ever use Cloudflare's orange-cloud proxy instead of a tunnel, set the Matrix subdomain to DNS only (grey cloud), the orange proxy breaks non-browser clients and federation.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.