Mastodon · 基于 ActivityPub 的免费开源联邦社交网络服务器 · 自托管实例部署与使用全指南
项目仓库: https://github.com/mastodon/mastodon
开源协议:AGPLv3 · 技术栈:Ruby on Rails + PostgreSQL + Redis + Sidekiq + Node.js · 要求:Ruby 4.0 / PostgreSQL 14+ / Redis 7.0+ / Node.js 24+ / FFmpeg 5.1+ · 部署:Docker / docker-compose / Helm
1 项目简介
Mastodon 是一个免费、开源的社交网络服务器,基于开放标准 ActivityPub。用户可以在上面发布链接、图片、文字与视频;所有 Mastodon 服务器作为联邦网络(the Fediverse)互相互通——一个实例上的用户可以无缝与另一个实例(包括其他实现 ActivityPub 的软件)的用户交流。
1.1 核心信息一览
| 项目项 | 内容 |
|---|---|
| 项目名称 | Mastodon |
| 仓库地址 | github.com/mastodon/mastodon |
| 项目定位 | 基于 ActivityPub 的开源联邦社交网络服务器 |
| 开源协议 | AGPLv3 |
| 技术栈 | Ruby on Rails(REST API)、PostgreSQL(主库)、Redis + Sidekiq(缓存/队列)、Node.js(Streaming API)、React/Redux |
| 版本要求 | Ruby 4.0、PostgreSQL 14+、Redis 7.0+、Node.js 24+、FFmpeg 5.1+ |
| 部署方式 | Docker / docker-compose / Heroku / Scalingo / Helm(mastodon/chart) |
| 官方镜像 | ghcr.io 容器镜像 |
| 官方文档 | docs.joinmastodon.org |
1.2 适用场景
- 自建一个独立的 Mastodon 实例,掌控自己的数据与社区规则。
- 作为联邦网络的一部分,与其他 ActivityPub 实例互通。
- 企业 / 组织搭建自有社交空间,对外仍可联邦互联。
1.3 能力边界(官方口径)
- Mastodon 是服务器端软件,你需要自己负责实例的运维、审核与合规。
- 仓库自带 Docker / docker-compose 部署配置;独立安装指南见官方文档。
2 功能特性
- 联邦网络(Fediverse):基于开放标准 ActivityPub,无厂商锁定,可与其他实例互通。
- 实时时间线:关注对象的更新实时按时间顺序出现在 UI。
- 媒体附件:上传图片与视频;无音轨视频按动画 GIF 处理,普通视频循环播放。
- 安全与审核工具:私密嘟文、锁定账号、词组过滤、静音、屏蔽、举报与审核系统。
- OAuth2 与 REST API:Mastodon 作为 OAuth2 provider,第三方 App 可用 REST 与 Streaming API,形成丰富应用生态。
3 官方界面预览
Mastodon 前台为时间线式界面,支持列视图、媒体上传、个人资料与设置;管理后台提供实例配置、审核仪表盘。
4 官方跳转链接汇总
| 类别 | 链接 | 说明 |
|---|---|---|
| 项目主页 | https://joinmastodon.org | 介绍与实例列表 |
| 文档 | https://docs.joinmastodon.org | 管理与使用文档 |
| 仓库主页 | https://github.com/mastodon/mastodon | 源码、Releases |
| 官方容器镜像 | ghcr.io mastodon | 官方镜像 |
| Helm Chart | mastodon/chart | Kubernetes 部署 |
| 独立安装指南 | docs.joinmastodon.org/admin/install | 手动安装 |
| 博客 | blog.joinmastodon.org | 官方博客 |
5 前置要求与服务器配置
5.1 软件前提
- Ruby 4.0、PostgreSQL 14+、Redis 7.0+、Node.js 24+、FFmpeg 5.1+。
- 用 Docker / docker-compose 可免去本机装齐这些依赖;仓库自带部署配置。
5.2 硬件建议
- 官方独立安装文档给出内存与存储建议;实例规模越大所需资源越高。
5.3 端口与资源
- Web 服务 443;Streaming API 由 Node.js 提供;具体端口按官方部署配置。
6 方式一:Docker / docker-compose 部署(推荐)
仓库自带 Docker 与 docker-compose 配置;官方也提供 ghcr 容器镜像。按官方部署文档拉起 web / sidekiq / streaming 等服务。
7 方式二:独立安装 / Helm
- 独立安装:按 docs.joinmastodon.org/admin/install 逐步配置 Ruby、PostgreSQL、Redis 与 Node.js。
- Kubernetes:使用官方 mastodon/chart。
8 配置项说明
- 主数据库 PostgreSQL;缓存与队列 Redis + Sidekiq。
- 实例配置(域名、SMTP、对象存储等)按官方管理文档配置。
9 常用运维命令
- 查看容器服务状态:
docker compose ps - 执行 Rails 管理任务:按官方文档进入容器执行
bundle exec rake mastodon:*。 - 升级:按官方升级文档迁移。
10 常见故障排查
- 依赖版本不符:严格按 Ruby 4.0 / PostgreSQL 14+ / Redis 7.0+ / Node.js 24+ / FFmpeg 5.1+ 对齐。
- 联邦互通异常:检查实例域名解析、HTTPS 与 ActivityPub 端点可达性。
- 更多见官方文档与 GitHub Issues。
11 风险与合规说明
- 许可证:AGPLv3,修改并对外提供网络服务时须开源对应源码。
- 运营责任:自建实例需自行承担内容审核、隐私合规与用户数据保护责任。
- 本文整理自官方 README,命令与版本要求以官方文档最新说明为准;不包含 star 数等动态数据。