我在我的服务器上部署了matrix服务
这是一个开放的通信协议,用于实时通信,包括即时消息、音频和视频通话。
同时它也是去中心化的
一、matrix和element的部署
准备内容:docker
首先,创建目录并运行
代码
sudo -i
mkdir -p /root/data/docker_data/matrix
cd /root/data/docker_data/matrix
sudo docker run -it --rm \
-v /root/data/docker_data/matrix/data:/data \
-e SYNAPSE_SERVER_NAME=matrix.zhuchenyu.cn \
-e SYNAPSE_REPORT_STATS=yes \
matrixdotorg/synapse:latest generate
注意:将matrix.zhuchenyu.cn改成自己的域名
然后修改homeserver.yaml内的内容
一般来说要修改的有:
- servername(改成自己域名)
- prot(端口)
最好在末尾加上:
enable_registration: true
enable_registration_without_verification: true
接下来,修改/root/data/docker_data/matrix(一般情况下)的docker-compose.yml
一般要修改的有:
- port(端口,包括matrix端口和elementweb的端口)
- VIRTUAL_HOST(改成自己域名)
- VIRTUAL_PORT(端口,一般与上面保持一致)
- LETSENCRYPT_HOST(改成自己域名)
- SYNAPSE_SERVER_NAME(改成自己域名)
最后,启动项目
代码
cd /root/data/docker_data/matrix
docker-compose pull
docker-compose up -d # 请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止;docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,完全没有必要浪费那些时间。
docker image prune # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像(非必须)
在显示
WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N]
时,输入y确认
大功告成
如果你没有对端口进行修改,那么现在matrix应该就在监听8008端口,并且element客户端(web)也已经可以在8009端口上访问
另外有一个雷点,就是在使用aapanel反向代理8008时,不建议直接使用反向代理功能,容易报错,建议修改 Nginx 的配置


代码
location / {
proxy_pass http://127.0.0.1:8008/; # 注意改成你实际使用的端口
rewrite ^/(.*)$ /$1 break;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade-Insecure-Requests 1;
proxy_set_header X-Forwarded-Proto https;
}
至此,matrix的部署说明就结束了。
如果你也喜欢这个项目但是遇到了问题,可以随时联系我的邮箱,我可以提供help for free。
二、使用element
直接访问反向代理的域名或是ip
选择注册账号(Create Account),更改服务器(原来默认是matrix.org,将其改成你自己的matrix域名,例如我是matrix.zhuchenyu.cn。
注册完账号就可以使用了,建议进行安全备份。
element还有手机客户端和pc客户端都可以使用,方法类似。更多功能请自行查阅官方文档和介绍。
发表回复