
nimmis/spigot,系统会拉取指定版本的BuildTools并构建Spigot.jar。可通过以下命令查看编译过程(假设容器名为spigot):
bashdocker logs -f spigot
编译完成后服务器将启动,日志会显示类似以下内容:
Success! Everything completed successfully. Copying final .jar files now. Copying spigot-1.18-R0.1-SNAPSHOT-bootstrap.jar to /build-mc/./spigot-1.18.jar Saved as ./spigot-1.18.jar Successfull build of spigot version 1.18 Setting 1.18 as current spigot version *** Running /etc/my_runalways/85_fix_startsh... start.sh missing, creating link for /minecraft/start.sh *** Running /etc/my_runalways/90_eula... *** Booting supervisor daemon... *** Supervisor started as PID 781 *** Started processes via Supervisor...... crond RUNNING pid 783, uptime 0:00:04 spigot RUNNING pid 784, uptime 0:00:04 syslog-ng RUNNING pid 785, uptime 0:00:03
按CTRL-C可退出日志查看。
若未指定版本,容器会检查Minecraft目录是否有已链接的编译版本,若有则使用该版本;若无(如首次运行),默认编译最新版本。如需指定特定版本,可添加环境变量:
bash-e SPIGOT_VER=<version>
例如,构建1.18版本:
bashdocker run -d -p 25565:25565 -e EULA=true -e SPIGOT_VER=1.18 --name spigot nimmis/spigot
可通过以下命令在运行中的容器内更改Minecraft版本:
bashdocker exec -it spigot set_mc_ver <version>
执行后,系统会检查Minecraft目录中是否已有编译版本,若无则进行构建。过程包括:停止当前Minecraft服务、调整Java版本(必要时下载)、编译新Spigot(如需)、重启Minecraft服务。不建议降级版本,因世界数据不向后兼容。
请参考BuildTools官方页面获取最新版本信息。
通过以下环境变量设置Spigot的初始和最大内存:
设置最大内存,单位为m(MB)或g(GB),默认1GB。例如设置为2GB:
bash-e MC_MAXMEM=2g
设置初始内存,单位同上。若未设置,默认与MC_MAXMEM相同。例如设置为512MB:
bash-e MC_MINMEM=512m
控制Minecraft内执行stop命令后的容器行为:
-e SPIGOT_AUTORESTART=yes(默认):执行stop后自动重启服务器-e SPIGOT_AUTORESTART=no:执行stop后服务器保持关闭,需通过mc_start命令或重启容器重新启动添加其他Java启动参数:
bash-e OTHER_JAVA_OPS=<参数>
查看最近10行服务器日志并实时输出:
bashdocker exec spigot mc_log
无需交互容器即可发送命令,例如设置时间为白天:
bashdocker exec spigot mc_send "time set day"
为用户授予管理员权限:
bashdocker exec spigot mc_send op <用户名>
默认情况下,执行stop命令后服务器会自动重启。若设置SPIGOT_AUTORESTART=no,则需手动启动:
bashdocker exec spigot mc_start
bashdocker exec spigot mc_stop
bashdocker exec spigot mc_start
bashdocker exec spigot mc_restart
使用docker stop命令停止容器时,Spigot服务器会优雅关闭以保存数据:
bashdocker stop spigot
为避免删除容器时丢失Minecraft文件,可将宿主机目录挂载到容器内的/minecraft目录:
bashdocker run -d -p 25565:25565 -e EULA=true -v /host/path/to/mc-data:/minecraft --name spigot nimmis/spigot
外部挂载卷的所有者UID可能与容器内minecraft用户(UID 1000)不匹配,导致读写权限问题。系统会自动检查/minecraft目录所有者UID与minecraft用户UID,若不匹配则调整minecraft用户UID以匹配目录所有者。
如需手动指定minecraft用户UID,可使用环境变量:
bash-e SPIGOT_UID=<uid>
例如设置UID为1132:
bash-e SPIGOT_UID=1132
更新可用Minecraft版本列表:
bashdocker exec -it spigot get_mc_versions
docker stop时优雅关闭服务器如遇问题或有疑问,请通过GitHub issue提交反馈。提交时请包含:
cat /etc/BUILDS/***的输出(如有可能)欢迎提交新功能、修复或更新,无论大小。我们会尽快处理所有Pull Request。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务