TrueNAS Scale 完整部署 Minecraft Forge 服务器:Docker 从零到 1 实操
2026/9/13 15:03:10 网站建设 项目流程

TrueNAS Scale 完整部署 Minecraft Forge 服务器:Docker 从零到 1 实操

【免费下载链接】docker-minecraft-serverDocker image that provides a Minecraft Server for Java Edition that automatically installs/upgrades versions, modloaders, modpacks and more at startup项目地址: https://gitcode.com/GitHub_Trending/do/docker-minecraft-server

想在家里跑一个能装 Mod 的 Forge 服务器?在 TrueNAS Scale 上用 Docker 部署 itzg/minecraft-server 镜像即可:版本、内存全部写成环境变量,第一次进游戏可以一个晚上内搞定。

跑起来长什么样

部署完成后的形态:存储池里的数据集挂进容器当数据卷,25565(游戏)和 25575(RCON)两个端口映射到宿主机,容器自己负责拉取指定版本的 Forge 服务端并启动。

动手前先核对

开工前把这张表过一遍,能省掉很多回头路:

检查项最低要求建议值
系统TrueNAS Scale,Docker 服务已启用系统与 Docker 保持更新
内存4GB8GB 以上
存储20GB 可用空间数据落在 SSD 上
端口25565、25575 可对外访问给宿主机配固定 IP

这个镜像替你做了什么

不用手动下载 Forge,也不用手拼 JVM 启动命令。itzg/minecraft-server 启动后会走一套内置脚本:读环境变量 → 下载指定版本的服务端 → 把你放的 mods 拷进容器 → 拉起进程,流程见下图(来自仓库):

你真正要做的只有两件事:说清"哪个版本",给够内存。

从零到可进游戏

数据集怎么建

  1. 在 TrueNAS 界面创建数据集minecraft/forge-server,属主root(UID 0)、属组root(GID 0)
  2. 建一个 Docker 桥接网络mc-net,方便以后扩展多容器
  3. 数据集就是持久化落点,世界数据和配置都存这里

Compose 里哪几个参数不能错

在数据集目录写docker-compose.yml,五个环境变量是核心:

services: mc: image: itzg/minecraft-server ports: - "25565:25565" environment: EULA: "TRUE" TYPE: FORGE VERSION: "1.20.1" FORGE_VERSION: "47.1.0" MEMORY: "4G" volumes: - ./data:/data - ./mods:/mods:ro restart: unless-stopped

几个容易踩的点:

  • TYPE=FORGE声明服务端类型,不写默认是原版
  • FORGE_VERSION也可填latest,自动选适配的最新版
  • MEMORY控制 JVM 堆,默认仅 1G,别照搬
  • ./data对应数据集路径,世界数据都在这里
  • ./mods只读挂载,镜像会在启动时把 mods 拷入容器

官方参考:Forge 示例、完整参数说明。

启动并验证

cd /mnt/tank/minecraft/forge-server docker compose up -d docker compose logs -f

首启会下载 Forge 安装包并初始化,日志出现Done (t=XX.XXXs)! For help, type "help"就算成功 ✅。

Mods 挂在哪里

jar 丢进./mods目录,重启容器即可生效。也可以让镜像从 CurseForge 直接拉文件,见 CurseForge 文件。

上线之后的事

备份交给快照

TrueNAS 的 存储 > 快照 里建周期任务,选这个数据集,每周做一次、保留 4 份。💾 Mod 服文件一多,快照比手动拷文件可靠得多。

内存按档位给

MEMORY决定堆大小,容器整体还要预留约 25% 给非堆内存:

档位MEMORY适用场景JVM 微调
2G~4G少量 Mod、熟人局-XX:+UseG1GC
4G~8G日常游玩默认即可,追吞吐加-XX:+UseParallelGC
8G 以上大 Mod 包JVM_XX_OPTS传参

细节看 JVM 选项说明。

RCON 远程管理

RCON 默认就是开的,RCON_PASSWORD默认随机生成,显式设一个更省心:

environment: RCON_PASSWORD: "一段足够长的强密码"

宿主机上docker exec -i mc rcon-cli就能下发命令。

没人玩就自动停

environment: ENABLE_AUTOSTOP: "TRUE" AUTOSTOP_TIMEOUT_EST: "300"

最后一名玩家离开 300 秒后自动停止,默认是 3600 秒。自动停止说明。

两个高频问题

  • Forge 安装失败或装了一半:临时加FORGE_FORCE_REINSTALL: "true",启动成功后删掉;网络受限时可用FORGE_INSTALLER_URL指向自建安装包,见 Forge 说明
  • 卡在 "Changing ownership" 步骤:加SKIP_CHOWN_DATA: "true",更多坑见 故障排查

一张表收尾

你关心的这套方案的应对
版本升级VERSION/FORGE_VERSION,镜像自动处理
数据安全数据集挂载 + 每周快照
Mod 更新替换./mods里文件,重启即生效
远程管理RCON 走 25575,密码显式设定

进阶方向:想加 Web 管理面板看 examples/ftba;多台服务器做代理统一入口看 examples/proxied。

【免费下载链接】docker-minecraft-serverDocker image that provides a Minecraft Server for Java Edition that automatically installs/upgrades versions, modloaders, modpacks and more at startup项目地址: https://gitcode.com/GitHub_Trending/do/docker-minecraft-server

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询