尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

10分钟拉起暮色森林服务器:Docker Minecraft Server一条compose搞定模组自动化

10分钟拉起暮色森林服务器:Docker Minecraft Server一条compose搞定模组自动化 10分钟拉起暮色森林服务器Docker Minecraft Server一条compose搞定模组自动化【免费下载链接】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这篇教程用 Docker Minecraft Server 镜像跑 Minecraft 服务器并让镜像在启动时自动拉取暮色森林TwilightForest模组、解析它的依赖。你不需要再去模组站手动下载 jar读完照着敲几分钟就能玩上一台暮色森林服务器。自建过模组服务器的人都熟这套流程主模组装好了它要前置前置又要前置版本号必须个个对上。游戏一更新模组跟着动漏一个服务器直接起不来。手动部署等于每次重下、重排、重测。Docker Minecraft Server 把这摊事整个接管了 你把想要的模组写成 compose 里的环境变量容器启动时它会自己去 Modrinth 找文件、补齐依赖、摆进对应目录旧版本还会顺手清掉。以后升级就是改一行环境变量再重启的事。一张镜像如何自动化整个模组流水线原理不复杂。镜像里内置了一套启动脚本先读TYPE、VERSION这类变量决定用哪种启动器再按MODRINTH_PROJECTS的声明去拉模组文件最后生成配置、交给 Java 进程。你写的那几行环境变量就是整条流水线的输入。三步拉起服务器一份compose写完就跑新建目录放入下面的compose.ymldocker compose up -d等启动日志出现就绪提示客户端连25565进服services: mc: image: itzg/minecraft-server ports: [25565:25565] tty: true environment: EULA: TRUE TYPE: FABRIC MODRINTH_PROJECTS: twilightforest MODRINTH_PROJECTS_DEFAULT_VERSION_TYPE: release MODRINTH_DOWNLOAD_DEPENDENCIES: required volumes: [mc:/data] volumes: mc: {}这份文件和官方示例 examples/modrinth/modrinth-projects/compose.yml 基本同构我只多加了一行依赖自动下载。想多装几个模组往MODRINTH_PROJECTS里继续追加即可。5个变量讲透这才是自动化的命门⚙️ 下面这五个变量决定了自动到底有多省心。变量管什么事示例取值MODRINTH_PROJECTS声明模组清单逗号或换行分隔。每项写项目 slug 或项目 ID支持多模组twilightforestMODRINTH_PROJECTS_DEFAULT_VERSION_TYPE划定最新版的取法上限release只挑稳定版beta会连 Beta 构建一起纳入releaseMODRINTH_DOWNLOAD_DEPENDENCIES前置模组的自动拉取开关。默认none一个不带required拉硬依赖optional再带上推荐依赖requiredVERSION_FROM_MODRINTH_PROJECTS让模组反过来定游戏版本镜像自动选所有声明模组都支持的最新 Minecraft省掉手动猜版本trueMODS_FILE第二条入口指定一个文本文件每行写一个模组下载链接照顾 Modrinth 上没有收录的模组/extras/mods.txt需要锁死具体版本时在条目后加冒号比如twilightforest:2.1.0。条目格式还支持可选标记和加载器前缀完整写法见 docs/mods-and-plugins/modrinth.md。进阶玩法按需选做世界留得住机器省得下把世界钉在本地目录默认卷mc:/data里存着全部世界数据删卷就等于删档。想备份或迁机器时把卷改成绑定挂载指向宿主机上的固定目录即可世界文件就落在你手边了。没人上线就自动关机服务器如果只服务一小撮人开自动停机最划算超过设定时间没人连它就自己关掉。注意 compose 里必须写restart: no不然停了也会被拉起来等于白停 ⏸️ENABLE_AUTOSTOP: TRUE AUTOSTOP_TIMEOUT_INIT: 1800 AUTOSTOP_TIMEOUT_EST: 900 restart: no出问题时查这4处起不来日志报模组版本不兼容→ 去 Modrinth 上暮色森林的项目页核对它支持的游戏版本用冒号语法把模组或游戏版本锁死再重启缺前置、缺 jar→ 把MODRINTH_DOWNLOAD_DEPENDENCIES设为required让它自动补依赖同时确认容器出口网络正常升级游戏后模组集体罢工→ 设VERSION_FROM_MODRINTH_PROJECTS: true让镜像从模组清单反推兼容的游戏版本启动输出异常、卡住不动→ 先docker logs 容器名读日志仍无解就删掉数据卷里缓存的mods目录逼它重新下载一次再往深走的两处入口想查全部变量翻 docs/configuration/想看更多模组加载组合逛 examples/modrinth/。到这里暮色森林已经只是MODRINTH_PROJECTS里的一行字——下次换别的模组改个 slug 又是一台新服务器。【免费下载链接】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),仅供参考
返回列表