深水
深水
发布于 2024-08-15 / 70 阅读
0
0

matrix 搭建记录 UNRAID版

生成 Synapse 配置文件

docker run -it --rm -v /mnt/user/appdata/matrix/server/data/:/data/ -e SYNAPSE_SERVER_NAME=域名 -e SYNAPSE_REPORT_ST
ATS=no matrixdotorg/synapse:latest generate

安装运行

docker run -d --name matrix -v /mnt/user/appdata/matrix/server/data/:/data/ -p 38008:8008 -p 38009:8009 -p 38448:8448 matrixdotorg/synapse:latest

或者

创建第一个管理员用户

docker exec -it matrix register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml -a -u 用户名 -p 密码

配置 Synapse 服务端

地址:/mnt/user/appdata/matrix/server/data/homeserver.yaml
建议亲自阅读一遍官方文档:https://element-hq.github.io/synapse/latest/welcome_and_overview.html

配置好之后重启容器即可

下面是一些基础配置

email:
  smtp_host: smtp.163.com #你的smtp服务器
  smtp_port: 465 #一般是465
  smtp_user: "xxx@163.com" #自行填写
  smtp_pass: "xxxxx" #自行填写
  force_tls: true
  require_transport_security: true
  enable_tls: true
  notif_from: "xxx@163.com" #修改为你想要设置的发件人名称
  enable_notifs: true
  notif_for_new_users: false
  client_base_url: "https:/xxxx" #修改为你的客户端域名
  validation_token_lifetime: 15m
  invite_client_location: https://xxxx #修改为你的客户端域名
# vim:ft=yaml

# 为新用户启用注册
enable_registration: true

# 默认情况下,其他服务器将尝试通过端口 8448 访问我们的服务器,告诉其他服务器将流量发送到端口 443
serve_server_wellknown: true

registrations_require_3pid: #允许的3pid注册方式
  - email

#turn服务器信息
turn_uris: [turn:xxx.com]
turn_username: "xxx"
turn_password: "xxx"
turn_user_lifetime: 2h

#新用户自动加入的房间
auto_join_rooms:
  - "#living-room:matrix.dk-groups.com"

trusted_key_servers:
  - server_name: "matrix.org"
suppress_key_server_warning: true

部署好之后要使用nginx等软件反向代理到自己的域名,客户端的使用参考官网。

server {
    server_name xxx.com;
    listen 443 ssl;
    ssl_certificate fullchain.crt;
    ssl_certificate_key private.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    listen 80;
    if ($scheme = http) {
      return 301 https://$host:443$request_uri;
    }
    location / {
      root /home/Element;
      index index.html;
    }
    location ~ ^/(_matrix|.well-known|_synapse)/ {
      proxy_pass http://127.0.0.1:8008;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Host $http_host;
      proxy_set_header X-Forwarded-Port $server_port;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_redirect http:// https://;
    }
  }


评论