总述 #
为了清楚起见,本文使用以下值作为示例:
- 委派域:example.org
- 实际托管 home server 的域:your.example.org
创建 Continuwuity 配置文件 #
见示例 config.toml
请结合实际情况进行修改
Note:
admin_execute配置项可以设为"users create-user june"以在第一次运行时生成一个管理员账户,记得创建完用户后再恢复此配置项,否则再次运行会报错,因为用户已存在
Docker compose #
见示例 compose.yaml
请结合实际情况修改
DNS 调优 #
注意:本文默认使用 dnsproxy + continuwuity 这个组合,从本文下载的配置文件也是基于此组合。
已知 Docker 的默认 DNS 解析器会导致 Matrix 联邦出现超时问题。要绕过它并使用性能更高的解析器,请将自定义/etc/resolv.conf配置文件挂载到 Continuwuity 容器中,continuwuity-resolv.conf 也已提供。
官方文档的使用 unbound 进行 Docker 部署的示例为:
networks:
matrix_net:
ipam:
driver: default
config:
- subnet: "10.10.10.0/24"
services:
homeserver:
# ...
volume:
- ./continuwuity-resolv.conf:/etc/resolv.conf:ro
unbound:
# ...
networks:
matrix_net:
ipv4_address: 10.10.10.20根据以上修改 compose.yaml 文件。
现在已经可以运行容器了。
设置反向代理 #
需要对以下路由进行反向代理:
对 your.example.org:
- *
对 example.org(主要用于委托):
- /.well-known/matrix/client
- /.well-known/matrix/server
- /.well-known/matrix/support
注意:
your.example.org直接反代 Continuwuity ,example.org分为两种情况:1. 当与your.example.org在同一个服务器上时,可以直接反代 Continuwuity ; 2. 当不再同一服务器上时,可以反代https://your.example.org或者手动上传委派文件。
推荐使用 Caddy
现在应该可以使用了。
检查服务器日志中是否有注册令牌。
您将看到如下输出:
In order to use your new homeserver, you need to create its
first user account.
Open your Matrix client of choice and register an account
on example.com using registration token x5keUZ811RqvLsNa .
Pick your own username and password!其实也可以直接在配置文件中就声明创建的账户,不过我不知道这种方式下还会不会有注册令牌。
备份 #
Continuwuity 目前只有 RocksDB 支持在线备份。请注意,数据库备份的格式与原始格式并不完全相同。
详情请见官方文档:https://continuwuity.org/maintenance.html#backups
后续 #
- 维护:https://continuwuity.org/maintenance
- 管理:https://continuwuity.org/admin_reference