Matrix Synapse (SQLite)
单容器 Matrix homeserver —— 用于个人用途和测试。
默认 SQLite 后端的 Matrix Synapse,单容器。轻量、零依赖设置,用于个人 homeservers、小型家庭/朋友社区和协议测试。对于生产联邦或繁忙房间,请改用 matrix-synapse-postgresql 模板。
使用 Pier 部署
- 1 打开 Pier 控制台,点击 Add service。
- 2 从模板列表中选择 Matrix Synapse (SQLite)。
- 3 选择版本、设置服务名称,Pier 会自动配置容器、存储和端口。
- 4 如需 HTTPS,请绑定域名。Traefik 会自动签发 Let's Encrypt 证书。
什么是 Matrix Synapse (SQLite)?
同样的 Synapse —— 参考 Matrix homeserver —— 但配置为默认 SQLite 后端而不 是 PostgreSQL。结果是一个容器,易于部署,易于备份,完美用于个人 homeservers、小社区或开发工作。
你仍然获得完整的 Matrix 协议 —— 与网络上每个其他 homeserver 的联邦、 端到端加密、语音和视频、桥接到 Telegram/Discord/WhatsApp/Signal —— 只是 规模更小。
Pier 如何部署它
本模板使用官方 matrixdotorg/synapse 镜像和默认 SQLite 存储。默认端口:
8008(HTTP,在 Traefik 后,当你附加自定义域名时带 TLS)。
数据卷挂载在 /data,包含 homeserver.db、homeserver.yaml 和媒体存储。
备份是平凡的 —— 容器暂停时卷的副本。
首次启动后,通过 docker exec 运行 register_new_matrix_user 创建管理员
用户,然后将 Element 客户端指向 homeserver URL。
何时不要使用本模板
一旦你有多于少数活跃用户,或者你开始加入有许多联邦参与者的繁忙公共房间,
SQLite 就成为瓶颈。迁移到 matrix-synapse-postgresql 模板 —— Synapse 提供
synapse_port_db 脚本,一次性完成转换。
对于实验性轻量 homeservers,Dendrite (Go) 和 Conduit (Rust) 提供替代品。 对于无运维工作的托管 Matrix,存在 Element Matrix Services。自托管 SQLite Synapse 命中单用户和小组 homeservers 的最佳点。
核心功能
单容器
Synapse + SQLite 在一个镜像中。无需单独的数据库来配置、备份或协调重启。最简单的可能自托管。
完整 Matrix 协议
联邦、E2EE、桥、语音/视频通话、房间版本 —— Synapse 支持的所有规范功能与 Postgres 构建的运行方式相同。
Element 客户端到处工作
将 Element Web / iOS / Android / 桌面指向你的 homeserver URL —— 完整的 E2EE 聊天、语音、视频、文件共享。
桥接到其他平台
Telegram、Discord、WhatsApp、Signal、IRC、Slack、XMPP 桥都作为通过 appservice API 与 Synapse 通信的单独服务运行。
微小资源占用
空闲约 200 MB RAM,典型个人使用低于 1 GB。在 5 美元 VPS 上舒适运行,与几个朋友共享 homeserver。
应用场景
个人 homeserver
一个用户(你)加几个朋友的 homeserver。轻量、低维护、与 Matrix 的其余部分联邦。
家庭 / 户内聊天
为你的家庭运行 homeserver,让孩子和祖父母共享一个 Element 应用,而不是 WhatsApp + iMessage + SMS。
协议测试和开发
启动一次性 homeserver 来测试 Matrix 机器人、桥、客户端或 appservices,无需支付托管 Matrix 费用。
小社区
你正在迁出的 discord 服务器、迁移到 Matrix 的小 subreddit 或私人兴趣小组的自托管 homeserver。
代码示例
docker exec -it pier-synapse-sqlite \
register_new_matrix_user \
-u alice -p strongpassword -a \
-c /data/homeserver.yaml \
http://localhost:8008 # /.well-known/matrix/server (在顶级域名提供)
{"m.server": "matrix.example.com:443"}
# /.well-known/matrix/client
{"m.homeserver": {"base_url": "https://matrix.example.com"}} curl https://federationtester.matrix.org/api/report?server_name=matrix.example.com | jq '.FederationOK' services:
mautrix-telegram:
image: dock.mau.dev/mautrix/telegram:latest
environment:
HOMESERVER_URL: http://synapse:8008
volumes:
- ./tg:/data 对比
| vs matrix-synapse-postgresql(本目录) | 任何带联邦或大房间的生产部署使用 PostgreSQL 模板。SQLite 对个人/测试用途还行,但跟不上繁忙房间的联邦流量。 |
| vs Dendrite、Conduit | Go 和 Rust 的替代 Matrix homeservers。比 Synapse 更轻量但功能不太完整,经历少。Synapse 仍是参考实现。 |
| vs matrix.org 托管 homeservers | 托管 Matrix 启动快,但你失去数据主权并按用户付费。除 VPS 账单外自托管免费。 |
常见问题
为什么我会选择 SQLite 而不是 PostgreSQL?
我可以稍后从 SQLite 迁移到 PostgreSQL 吗?
SQLite homeserver 实际能处理多少用户?
桥工作吗?
语音和视频呢?
备份?
相关服务
在你的 VPS 上部署
默认 SQLite 后端的 Matrix Synapse,单容器。轻量、零依赖设置,用于个人 homeservers、小型家庭/朋友社区和协议测试。对于生产联邦或繁忙房间,请改用 matrix-synapse-postgresql 模板。
部署此服务 →