Initial commit: Matrix stack (Synapse + Synapse-Admin + Element Web) behind Traefik
Fully dockerized deployment with automatic Let's Encrypt certificates via Traefik's static file provider (no docker.sock needed), bind-mounted data folders instead of named volumes, and domain/secrets kept out of git via .env + rendered templates. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
39
.env.example
Normal file
39
.env.example
Normal file
@@ -0,0 +1,39 @@
|
||||
# =============================================================================
|
||||
# Matrix stack configuration
|
||||
# Copy this file to ".env" and fill in real values before starting the stack.
|
||||
# ".env" is git-ignored on purpose: it is the only place where your real
|
||||
# domain name and secrets live.
|
||||
# =============================================================================
|
||||
|
||||
# --- Domain ------------------------------------------------------------------
|
||||
# Bare domain used as the Matrix server_name (this is what ends up in every
|
||||
# user id: @user:DOMAIN). A DNS A/AAAA record for DOMAIN and for each
|
||||
# subdomain below must point to this server's IP.
|
||||
DOMAIN=example.com
|
||||
|
||||
# Subdomains (each needs its own DNS record pointing here)
|
||||
MATRIX_SUBDOMAIN=matrix
|
||||
ELEMENT_SUBDOMAIN=element
|
||||
ADMIN_SUBDOMAIN=admin
|
||||
TRAEFIK_SUBDOMAIN=traefik
|
||||
|
||||
# --- Traefik / Let's Encrypt ---------------------------------------------------
|
||||
# Email used for Let's Encrypt account registration and expiry notices.
|
||||
ACME_EMAIL=changeme@example.com
|
||||
|
||||
# htpasswd credentials for the Traefik dashboard (traefik.DOMAIN).
|
||||
# Generate your own with:
|
||||
# openssl passwd -apr1
|
||||
# Format: user:hash (escape any literal "$" as "$$" if you edit this by hand
|
||||
# outside of a real .env file consumed by docker compose)
|
||||
TRAEFIK_DASHBOARD_AUTH='admin:changeme'
|
||||
|
||||
# --- PostgreSQL (Synapse database) -------------------------------------------
|
||||
POSTGRES_DB=synapse
|
||||
POSTGRES_USER=synapse
|
||||
POSTGRES_PASSWORD=changeme
|
||||
|
||||
# --- Synapse -------------------------------------------------------------------
|
||||
# Shared secret used only once, to create the first admin account via
|
||||
# `register_new_matrix_user`. Generate with: openssl rand -hex 32
|
||||
REGISTRATION_SHARED_SECRET=changeme
|
||||
Reference in New Issue
Block a user