如何使用 Modrinth 搭建多人游戏服务器
如何使用 Modrinth 搭建多人游戏服务器
使用 Modrinth 搭建多人服务器有两条路线:购买集成式 Modrinth Hosting,或者在自己的 Linux 服务器上运行 Modrinth 模组包。前者更省事;后者能控制 Java、Docker、网络、备份和监控,还可以同时运行代理或网页地图。
本文使用 Docker 演示自建方案,因为它可复现、容易迁移,也便于回滚。Modrinth 目前主要面向 Minecraft Java 版,因此这不是纯 Bedrock 服务器教程。
**直接答案:**准备一台至少 4GB 内存的 Linux 服务器,安装 Docker,运行
itzg/minecraft-server,设置TYPE=MODRINTH和MODRINTH_MODPACK,开放 TCP 25565,并让所有玩家安装完全相同的模组包版本。
Modrinth 在服务器架构中的作用
Modrinth 同时包含内容平台、启动器、API 和托管服务。项目页保存版本与文件元数据;Modrinth App 安装和启动客户端实例;Modrinth Hosting 才是真正运行世界的服务器。仅安装启动器不会自动得到一台公网服务器。
.mrpack 也不只是若干 JAR 的压缩包。其 modrinth.index.json 声明 Minecraft 和加载器版本、文件哈希、下载地址,以及依赖在客户端或服务器端是 required、optional 还是 unsupported。overrides 与 server-overrides 则用于分层覆盖配置。兼容安装器因此可以排除客户端专用模组并可靠重建服务端。详细格式见 Modrinth 官方说明。
官方 Modrinth Hosting 还是 VPS?
Modrinth Hosting 适合不想维护 Linux 的玩家。官方页面目前列出了集成内容浏览器、控制台、文件管理器、SFTP、15 份异地备份、自定义 modrinth.gg 地址和额外端口,并在对应 Minecraft 版本支持时提供 Fabric、Quilt、Forge、NeoForge、Paper 与 Purpur。
如果需要 SSH/root、自定义备份目标、Velocity 代理、Dynmap、多个进程或基础设施即代码,则 VPS 更合适。
在自建场景中,LightNode 是实用选择之一:它提供 KVM、NVMe、root 权限、多个地区和按小时计费,适合先短时间测试模组包。轻量原版或许能在 2GB 实例启动,但实际模组服建议至少 4GB;中型模组包从 6–8GB 起步。节点应靠近主要玩家,而不是只看价格。
Minecraft 主 tick 循环经常受单核性能限制。若服务器长期超过每 tick 50ms,单纯增加内存通常不能解决问题。
容量规划
| 负载 | 建议起步配置 | 说明 |
|---|---|---|
| 原版或轻量 Fabric,2–5 人 | 2–4 vCPU、4GB | 适当降低视距 |
| 中型模组包,5–10 人 | 4 vCPU、6–8GB | 优先高主频 CPU |
| 重型模组包或 10 人以上 | 4–8 vCPU、8–16GB | 扩容前先做性能分析 |
为 Linux、Docker、文件缓存和监控预留 1–2GB,不要把全部物理内存都分配给 JVM。例如 6GB 服务器通常只应给 Minecraft 4–5GB 堆内存。
第一步:准备 Ubuntu 与 Docker
以下命令适用于 Ubuntu 24.04 或相近版本:
sudo apt update
sudo apt upgrade -y
sudo apt install -y docker.io docker-compose-v2
sudo systemctl enable --now docker
sudo install -d -m 0750 /opt/modrinth-server
sudo chown "$USER":"$USER" /opt/modrinth-server
cd /opt/modrinth-server生产服务器还应创建非 root 管理账户、使用 SSH 密钥,并在确认密钥可登录后关闭密码认证。只公开 Minecraft 端口,SSH 应限制来源。
第二步:锁定模组包版本并启动
在 Modrinth 项目页复制 slug、项目 ID、项目 URL,或最好复制精确的版本页 URL。版本锁定可以防止一次普通重启意外改变整个模组集合。
在 /opt/modrinth-server/compose.yaml 写入:
services:
minecraft:
image: itzg/minecraft-server:latest
container_name: modrinth-minecraft
restart: unless-stopped
ports:
- "25565:25565/tcp"
environment:
EULA: "TRUE"
TYPE: "MODRINTH"
MODRINTH_MODPACK: "https://modrinth.com/modpack/your-pack/version/your-version"
MEMORY: "6G"
USE_AIKAR_FLAGS: "true"
ONLINE_MODE: "TRUE"
ENABLE_WHITELIST: "TRUE"
WHITELIST: "PlayerOne,PlayerTwo"
OPS: "YourMinecraftName"
VIEW_DISTANCE: "8"
SIMULATION_DISTANCE: "6"
MAX_PLAYERS: "10"
MOTD: "Private Modrinth Server"
volumes:
- ./data:/data
stop_grace_period: 2m替换示例 URL、内存和玩家名,然后启动并查看日志:
docker compose up -d
docker compose logs -f minecraft安装器会解析模组包、下载服务端兼容文件、安装加载器并生成世界。首次启动需要下载依赖与生成出生区块,可能持续数分钟。公网服务器应保持 ONLINE_MODE=TRUE;随意关闭正版验证会允许用户名伪造。
第三步:防火墙与域名
Java 版通常使用 TCP 25565:
sudo ufw allow 25565/tcp
sudo ufw status verbose云厂商防火墙也必须放行相同端口。不要公开 Docker socket、RCON 或管理面板。启用 RCON 时应绑定私网、使用随机长密码,并通过 VPN 或 SSH 隧道访问。
域名不是必需的。可用 mc.example.com 的 A 记录指向 IPv4;使用非默认端口时配置 _minecraft._tcp SRV 记录,或让玩家输入 域名:端口。普通 HTTP CDN 代理通常无法转发 Minecraft 协议。
如何在 Modrinth 上玩多人游戏
所有玩家必须使用相同的 Minecraft、加载器、模组包和必要配置。在 Modrinth App 中打开 Browse,安装对应模组包并从该实例启动,而不是启动无关的原版配置。
进入 Minecraft 后选择 Multiplayer → Add Server,填写名称和地址。也就是说,“How to add a server to Modrinth”的实际操作发生在由 Modrinth 启动的 Minecraft 多人游戏页面;私人服务器无需发布成公开 Modrinth 项目。
自己制作模组包时,可以从实例的 Mods 页导出 .mrpack 私下分享;若要公开发布,则必须检查文件再分发权限并提交 Modrinth 审核。
备份、升级与性能
数据保存在 /opt/modrinth-server/data,替换容器不会删除世界,但持久化目录本身并不是备份。升级前应干净停服,并把数据复制到 VPS 之外:
cd /opt/modrinth-server
docker compose stop minecraft
sudo tar -C data -czf "/var/backups/modrinth-$(date +%F-%H%M).tar.gz" .
docker compose start minecraft保留多个异地版本并实际测试恢复。更新时阅读变更日志、备份、修改固定版本 URL 再重启;Minecraft 大版本、加载器或世界生成变化应先在世界副本测试。
用 docker stats modrinth-minecraft 观察容器资源,用 docker compose logs --tail=200 minecraft 查异常,并用 Spark 等兼容分析器检查 TPS/MSPT。MSPT 持续低于 50 通常才能维持 20 TPS。内存充足而 MSPT 仍高时,应排查实体、区块加载器、维度、模组和每 tick 执行命令的数据包,而不是盲目加内存。
无法连接 Modrinth 服务器怎么办?
遇到 Cant connect to Modrinth server 时先保存完整报错,再分层检查:
docker compose ps
docker compose logs --tail=100 minecraft
sudo ss -lntp | grep 25565没有监听端口说明进程没有成功启动,应查第一条异常、加载器版本、客户端专用模组、Java 版本或 OOM。监听正常但公网超时,则检查 UFW、云防火墙、IP 和 DNS。用直接 IP:端口 可以区分 DNS 与传输问题;Modrinth 官方排障指南 也建议这样做。
| 报错 | 常见原因 | 处理方法 |
|---|---|---|
| Connection timed out | 防火墙、地址错误或服务器离线 | 检查进程监听及两层防火墙 |
| Unknown host | DNS 拼写或尚未生效 | 暂时使用直接 IP |
| Incompatible version | 客户端与服务端版本不同 | 启动完全相同的模组包版本 |
| Mod mismatch | 加载器、模组或配置不同 | 重新安装同一 .mrpack |
| Not whitelisted | 玩家不在白名单 | 从控制台加入白名单 |
免费托管与技术评价
Modrinth App、项目下载和本文使用的软件是免费的,但全天候服务器需要 CPU、内存、磁盘和流量。“Modrinth server hosting free”通常指限时试用。截至本文检查时,Modrinth 展示过美国地区 3GB、五天免信用卡试用,正常托管仍为付费服务,供应情况可能变化。
家中电脑自托管没有月租账单,但会产生电费、占用上传带宽、暴露家庭 IP,还可能受到 CGNAT 限制。VPS 解决公网接入问题,但同样不是免费资源。
阅读 Modrinth server hosting reviews 时应把便利性和硬件性能分开。官方托管的优势是内容安装、属性、控制台、SFTP 与备份集中在一个界面;VPS 的优势是完整系统控制。前者适合只想开服游玩的团队,后者适合愿意承担补丁、安全、备份和故障响应的管理员。
FAQ
Can I host a server through Modrinth?
可以。可以购买官方 Modrinth Hosting,也可以通过 mrpack-install、itzg/minecraft-server 或其他兼容安装器在自己的服务器上运行模组包。Modrinth 的模组包文档列出了这些方式。
Can you use Modrinth to play multiplayer?
可以。在 Modrinth App 安装与服务器一致的模组包,从该实例启动 Minecraft,再从 Multiplayer 菜单加入服务器。启动器运行客户端;持久世界运行在 Modrinth Hosting、VPS 或其他可访问服务器上。
How much does it cost to host a Modrinth server?
截至 2026 年 8 月 7 日,官方页面显示自定义配置每月 5 美元起,按季度付费的 Small、Medium、Large 方案折合每月 10、15、20 美元。库存、地区和价格可能变化;VPS 成本取决于配置和实际运行小时。
How good is Modrinth server hosting?
对于希望快速安装模组包,并集中使用控制台、文件管理、SFTP、备份、自定义地址和主流加载器的玩家,它是很好的选择。需要 root、自定义守护进程、代理网络或独立备份体系时,VPS 更适合。
Are Modrinth servers 24/7?
是。Modrinth 将官方产品描述为 24/7 Minecraft 托管。VPS 配置 restart: unless-stopped、保持实例开机和余额充足后也能持续运行,但两种方式都可能发生维护、崩溃或网络故障,因此仍要监控和异地备份。
Bedrock 玩家可以加入吗?
Modrinth 当前主要面向 Java 版。Java 服务器有时可以通过 Geyser 与 Floodgate 接受 Bedrock 客户端,但这属于协议转换,并非原生 Bedrock 托管。部署前应确认加载器、插件、验证模式和额外 UDP 端口均受支持。
相关指南
游戏服务器 VPS · Pixelmon VPS · 免费 VPS · 美国 VPS
技术信息与价格检查于 2026 年 8 月 7 日。Modrinth 功能、库存、加载器兼容性和服务商价格都可能变化,请在部署前再次确认。