所周知mcsm是没有mac版本的安装包的,所以只能尝试通过其他方法安装,教程开始:
第一步 前置准备
安装运行mc所需的java和运行mcsm所需的node.js java下载:
https://www.oracle.com/cn/java/technologies/downloads/#jdk21-mac
选择macOS,下载DMG的链接,看自己的cpu选择x64和ARM64
node.js下载:
Node.js — Download Node.js®
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
下载LTC版本,LTC大概意思是稳定版,然后下面选择macOS,你的主机是苹果系统就选ARM64,如果是英特尔系统就选x64
前置准备完成,正式开始
第二步 准备文件
下载mcsm到本地
方法1:
Releases · MCSManager/MCSManager
Quick deployment, distributed, multi-user, modern management panel for Minecraft and Steam game servers / 快速安装,分布式架构,多用户销售,现代化的 Minecraft 和 Steam 游戏服务器管理面板 - MCSManager/MCSManager
直接去下载linux_release版本,也就是第二个,然后手动传到电脑
方法2:
打开mac系统的终端,在其中输入
#转移到用户目录下的mcsm文件夹
cd ~/mcsm
#在当前文件夹用git下载文件
curl -L -O https://github.com/MCSManager/MCSManager/releases/latest/download/mcsmanager_linux_release.tar.gz
两种方法结果是一样的,看你喜欢
第三步 安装依赖
完成下载后去用户目录/mcsm文件夹找到他,然后直接双击自动解压,他会自动解压出一个叫mcsmanager的文件夹,把这个文件夹里的东西挪到刚才的mcsm里。
#前往文件夹
cd ~/mcsm
#运行安装依赖
sh install.sh
第四步 制作同时启动功能
完成安装依赖后其实就已经可以使用了,但是还是有个问题,每次都需要同时启动两个sh,因为mcsm是分为web端和后端两部分组成的
所以我们要做一个方便的启动脚本来实现点一下直接启动,而不是每次用终端启动,为了不麻烦去新建,我们直接改造install.sh,因为这是安装依赖已经用不到了
文本编辑在里面改成
#!/bin/bash
BASE_PATH=$(cd "$(dirname "$0")" && pwd)
# 1. 强制杀掉所有 node 进程,防止端口被占用
echo "🧹 正在清理可能残留的后台进程..."
killall -9 node 2>/dev/null
# 给 Mac 系统 2 秒钟的时间来彻底回收端口
sleep 2
echo "======================================="
echo "🚀 正在启动 MCSManager..."
echo "📂 当前运行目录: ${BASE_PATH}"
echo "⚠️ 请不要关闭此窗口,关闭即代表停止服务器!"
echo "======================================="
# 2. 启动 Daemon
echo "-> 正在启动 Daemon 守护进程..."
cd "${BASE_PATH}/daemon"
node app.js &
DAEMON_PID=$!
# 3. 启动 Web
echo "-> 正在启动 Web 控制面板..."
cd "${BASE_PATH}/web"
node app.js &
WEB_PID=$!
echo "======================================="
echo "✅ 启动指令已发送!"
echo "🌐 浏览器即将自动打开..."
echo "======================================="
# 4. 自动打开浏览器魔法
# 延迟 3 秒,等面板彻底启动完毕后,调用 Mac 系统默认浏览器打开网页
(sleep 3 && open "http://localhost:23333") &
# 5. 捕捉窗口关闭信号:当你点 ❌ 关闭窗口时,强制带走这两个进程
trap "echo '🛑 正在关闭面板...'; kill -9 $DAEMON_PID $WEB_PID 2>/dev/null; exit" SIGINT SIGTERM SIGHUP EXIT
# 6. 挂起等待
wait
因为这个本身是有一些bug的,正常启动后,你直接x掉终端,会导致非正常结束,就是这两个程序仍然会占用端口,导致下一次启动报错,理想状态是没错ctrl+c关闭后在叉掉。
修改完成后保存,在讲文件名修改为install.command,commande是一种mac上可以直接运行的文件格式,就不需要每次cd再sh了。
为了防止更改文件格式后没有权限,打开终端
chmod +x ~/mcsm/install.command
#也可以输入chmod +x 后直接把文件拖进去会自动识别路径
现在你就可以双击直接打开两个程序,并且自动弹出浏览器登陆了。
接下来是小众功能
附加功能 有DDNS需求的
我们的家庭网络大多是动态ip,这其实很不方便我们联机,所以假如你拥有一个域名,在搭配DDNSGO就会非常方便了
下载ddns
Release v6.16.4 · jeessy2/ddns-go
Changelog c530fae fix: support IPv4-mapped IPv6 extraction (#1664)
下载ddns-go_6.16.4_darwin_arm64.tar.gz版本的
解压后放到同路径下
首先把下载好的ddns-go放到mcsm文件夹下,和web与daemon文件夹保持平齐
然后修改install.command,使他现在同时打开mcsm前后端与ddnsgo
#!/bin/bash
BASE_PATH=$(cd "$(dirname "$0")" && pwd)
# 1. 核弹级清理:强制杀掉 node 和 ddns-go 进程
echo "🧹 正在清理可能残留的后台进程..."
killall -9 node 2>/dev/null
killall -9 ddns-go 2>/dev/null
# 给 Mac 系统 2 秒钟的时间来彻底回收端口
sleep 2
echo "======================================="
echo "🚀 正在启动 MCSManager & DDNS-GO..."
echo "📂 当前运行目录: ${BASE_PATH}"
echo "⚠️ 请不要关闭此窗口,关闭即代表停止所有服务!"
echo "======================================="
# 2. 启动 Daemon
echo "-> 正在启动 Daemon 守护进程..."
cd "${BASE_PATH}/daemon"
node app.js &
DAEMON_PID=$!
# 3. 启动 Web
echo "-> 正在启动 Web 控制面板..."
cd "${BASE_PATH}/web"
node app.js &
WEB_PID=$!
# 4. 启动 DDNS-GO (适配独立文件夹)
echo "-> 正在启动 DDNS-GO 域名解析服务..."
# 检查 ddns-go 文件夹里是否存在 ddns-go 运行文件
if [ -f "${BASE_PATH}/ddns-go/ddns-go" ]; then
cd "${BASE_PATH}/ddns-go"
chmod +x ./ddns-go # 确保它有运行权限
./ddns-go &
DDNS_PID=$!
else
echo "⚠️ [警告] 未找到 ddns-go 运行文件!请确保它在 ddns-go 文件夹内且名字正确。"
DDNS_PID=""
fi
echo "======================================="
echo "✅ 所有服务启动指令已发送!"
echo "🌐 浏览器即将自动打开..."
echo "======================================="
# 5. 自动打开浏览器(延迟 3 秒)
# 自动打开 MC 面板 (23333) 和 DDNS-GO 面板 (9876)
(sleep 3 && open "http://localhost:23333" && open "http://localhost:9876") &
#不需要自动打开ddnsgo则去掉 && open "http://localhost:9876"
# 6. 捕捉窗口关闭信号:当你点 ❌ 关闭窗口或按 Ctrl+C 时,强制带走这三个进程
trap "echo '🛑 正在关闭面板和域名解析...'; kill -9 $DAEMON_PID $WEB_PID $DDNS_PID 2>/dev/null; exit" SIGINT SIGTERM SIGHUP EXIT
# 7. 挂起等待
wait
1 个帖子 - 1 位参与者