matrix-synapse-auto-deploy
Автоматическое развертывание для matrix-org/synapse
Эта роль ansible автоматически развернет готовый сервер matrix на любом сервере. Она отличается от ролей matrix-docker-ansible-deploy тем, что не использует docker, а вместо этого использует виртуальную среду python3, по крайней мере для synapse.
Услуги
Эта роль настраивает следующие сервисы на вашем сервере:
Synapse: эталонная реализация "домашнего сервера" Matrix от основной команды разработчиков matrix.org
Coturn: STUN/TURN сервер для аудио/видео вызовов WebRTC
mxisd: Федеративный сервер идентификации Matrix для повышения конфиденциальности (документация)
nginx: Веб-сервер для riot.web и обратный прокси для synapse и mxisd
postgresql: База данных для synapse и mxisd
Riot: Веб-интерфейс, предварительно настроенный для вашего домашнего сервера
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 запись такого формата, чтобы сообщить другим домашним серверам, на каком порту они должны общаться. Кроме того, файлы .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
Наслаждайтесь
Теперь вы можете подключиться к вашему домашнему серверу через веб-клиент Riot или указав ваш домашний сервер в любом другом клиенте.
ansible-galaxy install Madic-/matrix-synapse-auto-deploy