matrix-synapse-auto-deploy
Автоматическое развертывание для matrix-org/synapse
Эта ansible роль автоматически развернет готовый к работе matrix сервер на любом сервере. Она отличается от ролей matrix-docker-ansible-deploy тем, что не использует docker, а вместо этого использует виртуальную среду python3, как минимум для synapse.
Сервисы
Эта роль настраивает следующие сервисы на вашем сервере:
Synapse: Справочная реализация "homeserver" Matrix от основной команды разработки matrix.org
Coturn: СТУН/ТУРН сервер для аудио/видео вызовов WebRTC
mxisd: Федеративный сервер идентичности Matrix, для повышения конфиденциальности (документация)
nginx: Веб-сервер для riot.web и обратный прокси для synapse и mxisd
postgresql: База данных для synapse и mxisd
Riot: Веб-интерфейс, предварительно настроенный для вашего homeserver
Let's Encrypt: TLS сертификат для Riot и Synapse
Небольшой обзор архитектуры
Предварительные требования
- Git
- Ansible >= 2.6
- Записи DNS
- A записи
- A запись для matrix-machine.yourdomain.tld.
- A запись для riot-webclient.yourdomain.tld.
- 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.
- A записи
У вас должна быть такая SRV запись, чтобы сообщить другим HomeServers, на каком порту они должны общаться. Кроме того, .well-known файлы будут созданы в {{ matrix_well_known_location }}. Вам решать, куда переместить эти файлы на сервер, который обслуживает ваш основной домен.
Поддерживаемые ОС
- 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
Наслаждайтесь
Теперь вы можете подключиться к вашему Homeserver через веб-клиент Riot или указав ваш Homeserver на любом другом клиенте.
ansible-galaxy install buluma/matrix-synapse-auto-deploy