一、项目介绍
需要搭建 Matrix 服务和 Element Web端应用
Matrix 是一个开放的通信协议,用于实时通信,包括即时消息、音频和视频通话。
它是去中心化的,这意味着任何人都可以设置自己的 Matrix 服务器,并与其他 Matrix 服务器通信。
Matrix 的目标是为所有不同的通信服务提供一个统一的标准,使得不同的服务可以互相通信。
Element 是基于 Matrix 协议的一个客户端应用。
它允许用户通过 Matrix 协议进行即时消息、音频和视频通话。
Element 有多个版本,包括 Web、桌面和移动应用。
它是 Matrix 生态系统中最流行的客户端之一。
Matrix 官方网站:https://matrix.org/
Matrix GitHub 官方仓库:https://github.com/matrix-org/synapse
Element 官方网站:https://element.io/
Element 自建 GitHub 地址:https://github.com/vector-im/element-web
二、安装步骤
1、绑定域名
需要分别为 Matrix 和 Element 绑定域名,各添加一条A记录

2、添加反向代理
使用 Nginx Proxy Manager 添加反向代理,我分别使用8008和8009端口,注意开放相应防火墙


可以再设置一下SSL

3、部署服务
创建目录
mkdir -p /root/docker_data/matrix
cd /root/docker_data/matrix
拉取并运行镜像,注意修改 SYNAPSE_SERVER_NAME 为自己刚才设置的matrix需绑定的域名
sudo docker run -it --rm \
-v /root/docker_data/matrix/data:/data \
-e SYNAPSE_SERVER_NAME=matrix.shiguangdev.eu.org \
-e SYNAPSE_REPORT_STATS=yes \
matrixdotorg/synapse:latest generate
修改 homeserver.yaml 文件
cd /root/docker_data/matrix/data
vim homeserver.yaml
在最底部添加以下内容,打开注册功能以及跳过注册验证
enable_registration: true
enable_registration_without_verification: true
如图所示

创建 docker-compose.yml 文件
cd /root/docker_data/matrix
vim docker-compose.yml
粘贴以下内容,注意将 VIRTUAL_HOST、LETSENCRYPT_HOST、SYNAPSE_SERVER_NAME 替换为自己的域名
如端口需调整,注意修改
version: "3.3"
services:
synapse:
image: "matrixdotorg/synapse:latest"
container_name: "matrix_synapse"
restart: unless-stopped
ports:
- 8008:8008
volumes:
- "./data:/data" # it will look at the current directory where you save the file and look for the data folder inside
environment:
VIRTUAL_HOST: "matrix.shiguangdev.eu.org"
VIRTUAL_PORT: 8008
LETSENCRYPT_HOST: "matrix.shiguangdev.eu.org"
SYNAPSE_SERVER_NAME: "matrix.shiguangdev.eu.org"
SYNAPSE_REPORT_STATS: "yes"
element-web:
ports:
- '8009:80'
#volumes:
# - '/etc/element-web/config.json:/app/config.json'
image: vectorim/element-web
restart: unless-stopped
执行 docker-compose up -d
通过 ip+端口 或者域名即可访问
Matrix服务

Element

若出现以下错误,需用域名访问,并且使用https的方式访问,反向代理时,SSL可勾选 Force SSL 强制https访问

4、注册账号与使用
4.1 注册账号
可以调整语言为简体中文

创建账户 => 编辑 => 使用自己搭建的Matrix服务

设置用户名及密码

这个界面可以跳过

至此账号已经创建完成

点击头像可以查看账户地址

或者在所有设置 => 通用 => 个人资料查看

4.2 日常对话
新创建跟个账户模拟聊天,输入对方账户地址,前往

模拟向对方发送一条消息

对方会收到邀请通知

对方可以接受聊天或者拒绝

回复一条消息

你接收到的消息

4.3 房间及视频通话
可以创建房间,类似群的功能

如果需要视频通话,可以在设置 => 实验室 => 加入beta

加入beta 后就可以创建视频房间了

模拟创建一个视频房间

要求成员加入,被要求人也需加入beta

被邀请人加入beta后可接受要求

开启视频和麦克风权限后就能开启视频通话了

5、更新服务
cd /root/docker_data/matrix
docker-compose pull
# 请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止
# docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,可以节省一些时间
docker-compose up -d
# prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像
docker image prune
6、卸载服务
cd /root/docker_data/matrix
docker-compose down
cd ..
rm -rf /root/docker_data/matrix # 完全删除
参考文章
https://blog.laoda.de/archives/docker-compose-install-matrix-element/
1866

被折叠的 条评论
为什么被折叠?



