buluma.matrix-synapse-auto-deploy

Auto-Bereitstellung für matrix-org/synapse

Bauzustand

Diese Ansible-Rolle wird automatisch einen einsatzbereiten Matrix Server auf jedem Server bereitstellen. Im Gegensatz zu den matrix-docker-ansible-deploy Rollen verwendet diese Rolle kein Docker, sondern ein Python3-Virtual Environment, zumindest für Synapse.

Dienste

Diese Rolle konfiguriert die folgenden Dienste auf Ihrem Server:

  • Synapse: Referenzimplementierung des "Homeserver" von Matrix vom Hauptentwicklungsteam bei matrix.org

  • Coturn: STUN/TURN-Server für WebRTC Audio-/Videoanrufe

  • mxisd: Föderierter Matrix-Identitätsserver, um die Privatsphäre weiter zu erhöhen (Dokumentation)

  • nginx: Webserver für riot.web und Reverse-Proxy für Synapse und mxisd

  • postgresql: Datenbank für Synapse und mxisd

  • Riot: Weboberfläche, die für Ihren Homeserver vorkonfiguriert ist

  • Let's Encrypt: TLS-Zertifikat für Riot und Synapse

Kleine Architekturübersicht

Voraussetzungen

  • Git
  • Ansible >= 2.6
  • DNS-Einträge
    • A-Einträge
      • A-Eintrag für matrix-machine.ihredomain.de.
      • A-Eintrag für riot-webclient.ihredomain.de.
    • SRV-Eintrag
      • _matrix._tcp.ihredomain.de. 3600 IN SRV 10 5 443 matrix-machine.ihredomain.de.
      • _matrix-identity._tcp.ihredomain.de. 3600 IN SRV 10 5 443 matrix-machine.ihredomain.de.

Sie sollten einen SRV-Eintrag wie diesen haben, um anderen Homeservern zu sagen, auf welchem Port sie kommunizieren müssen. Zusätzlich werden .well-known Dateien unter {{ matrix_well_known_location }} erstellt. Es liegt an Ihnen, diese Dateien auf den Server zu verschieben, der Ihre Apex-Domain bedient.

Unterstützte Betriebssysteme

  • Ubuntu 18.04
  • Debian 9

Es sollte auch problemlos auf jedem Systemd-basierten Betriebssystem laufen. Sie können gerne testen und mir Feedback geben (oder einen PR einreichen, um Unterstützung für Ihr bevorzugtes System hinzuzufügen).

Installation

Alle Variablen sind unter roles/matrix-synapse-auto-deploy/defaults/main.yml definiert. Sie müssen diese an Ihre Bedürfnisse anpassen. Schauen Sie sich die Datei playbook.example.yml für die wichtigsten Variablen an.

ansible-playbook playbook.example.yml --extra-vars "host=matrix.domain.com" -b -K

Viel Spaß

Sie können sich jetzt über den Riot-Webclient mit Ihrem Homeserver verbinden oder Ihren Homeserver in einem anderen Client angeben.

Über das Projekt

Ansible playbook for managing a matrix node with synapse and riot

Installieren
ansible-galaxy install buluma.matrix-synapse-auto-deploy
GitHub Repository
Lizenz
Unknown
Downloads
165
Besitzer
DevOps Engineer