Madic-.matrix-synapse-auto-deploy

matrix-org/synapse的自动部署

维护状态 构建状态 访问次数

这个 ansible 角色可以在任何服务器上自动部署一个准备好的 matrix 服务器。与 matrix-docker-ansible-deploy 角色不同,它不使用 docker,而是使用 python3 虚拟环境,至少对 synapse 来说是这样。

服务

该角色在您的服务器上配置以下服务:

  • Synapse:Matrix 的“家庭服务器”参考实现,由 matrix.org 的核心开发团队提供

  • Coturn:用于 WebRTC 音视频通话的 STUN/TURN 服务器

  • mxisd:联邦 Matrix 身份服务器,以进一步保护隐私(文档

  • nginx:为 riot.web 提供的 web 服务器,作为 synapse 和 mxisd 的反向代理

  • postgresql:用于 synapse 和 mxisd 的数据库

  • Riot:为您的家庭服务器预配置的 WebUI

  • Let's Encrypt:用于 Riot 和 Synapse 的 TLS 证书

小型 架构概述

前提要求

  • Git
  • Ansible >= 2.6
  • DNS 条目
    • A 记录
      • matrix-machine.yourdomain.tld 的 A 记录
      • riot-webclient.yourdomain.tld 的 A 记录
    • SRV 记录
      • _matrix._tcp.yourdomain.tld. 3600 IN SRV 10 5 443 matrix-machine.yourdomain.tld.
      • _matrix-identity._tcp.yourdomain.tld. 3600 IN SRV 10 5 443 matrix-machine.yourdomain.tld.

您需要有这样的 SRV 条目,以告知其他家庭服务器它们需要在哪个端口进行通信。 此外,还将在 {{ matrix_well_known_location }} 下创建 .well-known 文件。您可以将这些文件移动到为您的顶级域名提供服务的服务器上。

支持的操作系统

  • Ubuntu 18.04
  • Debian 9

它也应该能在任何支持 systemd 的操作系统上运行。您可以随意测试并给我反馈(或者提交 PR 以支持您喜欢的系统)。

安装

所有变量都定义在 roles/matrix-synapse-auto-deploy/defaults/main.yml 中。您需要根据自己的需求进行调整。请查看 playbook.example.yml 文件以获取最重要的变量。

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

享受吧

您现在可以通过 riot webclient 连接到您的家庭服务器,或者在任何其他客户端上指定您的家庭服务器。

关于项目

Ansible playbook for managing a matrix node with synapse and riot

安装
ansible-galaxy install Madic-.matrix-synapse-auto-deploy
许可证
Unknown
下载
187
拥有者