群辉docker搭建MCSM面板,开我的世界服务器

群辉docker搭建MCSM面板,开我的世界服务器

在网上找docker搭建我的世界服务器很多都是使用 itzg/minecraft-server镜像搭建
但是不知道是不是我技术太差,用这个方法只能开成功纯净服,开不了模组服,我就直接用docker安装ubuntu容器在容器里开服,后来发现MCSM面板,并搭建成功
所以我写了我的第一篇文章分享出来,下面开始搭建

1、下载docker镜像

启用ssh服务
群辉docker搭建MCSM面板,开我的世界服务器_第1张图片

在套件中心安装docker

使用FinalShell等软件连接nas

输入命令

sudo -i
#输入群辉登录是的密码

在这里插入图片描述

#登录成功后输入下载docker镜像
docker pull ubuntu

群辉docker搭建MCSM面板,开我的世界服务器_第2张图片
至于 为什么要用命令下载,原因就是
群辉docker搭建MCSM面板,开我的世界服务器_第3张图片

2、创建docker容器

回到nas

群辉docker搭建MCSM面板,开我的世界服务器_第4张图片

启动容器,点击高级设置

在本地创建mc-server的目录,装载路径为/opt

群辉docker搭建MCSM面板,开我的世界服务器_第5张图片

放行下面的端口

群辉docker搭建MCSM面板,开我的世界服务器_第6张图片
25565是我的世界java版的端口,23333,24444是MCSM的端口
然后点击应用,再下一步,回到容器列表双击刚刚创建的ubuntu
群辉docker搭建MCSM面板,开我的世界服务器_第7张图片
点击终端机,接下来我们的操作将在这个容器的终端进行

3、配置服务器的环境

  1. 更新软件包列表:apt update
  2. 安装 Java 运行时环境:apt install openjdk-17-jre -y (数字即版本,可对照下表更改)
Minecraft 版本 Java 版本
1.18+ 17
1.17+ 16+
1.12+ 8+
1.11- 8
  1. 检查环境是否正常:java -version

在这里插入图片描述

#安装wget命令
apt update
apt-get install wget -y
#安装git
apt install git -y

切换服务器 Java 版本
卸载旧的版本
检查当前安装的版本:java -version
卸载当前版本:apt remove openjdk-17-jre(以 Java 17 为例)
清理残留依赖包:apt autoremove
检查是否完全卸载:java -version
如果报错就表明卸载成功

4、开始安装面板

# 切换到安装目录/
cd /opt/
#如果没有这个目录就创建一个

# 下载运行环境
wget https://npmmirror.com/mirrors/node/v14.17.6/node-v14.17.6-linux-x64.tar.gz

# 解压文件
tar -zxvf node-v14.17.6-linux-x64.tar.gz
#这段时间会比较慢

# 链接程序到环境变量中
ln -s /opt/node-v14.17.6-linux-x64/bin/node /usr/bin/node
ln -s /opt/node-v14.17.6-linux-x64/bin/npm /usr/bin/npm

# 准备安装目录
mkdir /opt/mcsmanager/
cd /opt/mcsmanager/

# 下载面板端(Web)程序
git clone https://kgithub.com/MCSManager/MCSManager-Web-Production.git web
cd web

# 安装依赖库
npm install --production --registry=https://registry.npmmirror.com/ --no-fund
cd /opt/mcsmanager/

# 下载守护进程(Daemon)程序
git clone https://kgithub.com/MCSManager/MCSManager-Daemon-Production.git daemon
cd daemon
# 安装依赖库
npm install --production --registry=https://registry.npmmirror.com/
# 打开两个终端或两个 Screen 软件的终端窗口
#安装screen(可选)
apt -y install screen
#如果要创建具名screen会话,那么可以使用命令
screen -S yourscreenname
#这将会打开一个新的shell窗口,你可以在这里进行任意操作。不带参数的screen命令创建的是一个匿名

因为使用的群辉所以我们可以直接开两个终端

群辉docker搭建MCSM面板,开我的世界服务器_第8张图片

# 先启动守护进程
cd /opt/mcsmanager/daemon
# 启动
node app.js

# 然后启动面板端进程
cd /opt/mcsmanager/web
# 启动
node app.js

# 访问 http://localhost:23333/ 即可进入面板。
# 默认情况下,面板端会自动扫描 daemon 文件夹并且自动连接到守护进程。

现在我们可以打开浏览器,输入 群辉在本局域网的ip:23333 ,就可以访问面板了

群辉docker搭建MCSM面板,开我的世界服务器_第9张图片

群辉docker搭建MCSM面板,开我的世界服务器_第10张图片

创建账号,设置密码时要有数字、大小写字母

群辉docker搭建MCSM面板,开我的世界服务器_第11张图片

设置好账号密码后依次点击快速开始,创建一个Minecraft 服务器。

群辉docker搭建MCSM面板,开我的世界服务器_第12张图片

我们可以选择一键开服,

群辉docker搭建MCSM面板,开我的世界服务器_第13张图片

这里可以选择一些版本,就可以一键搭建我的世界服务器了
这样docker安装MCSM面板就告一段落了

注意!!!

群辉docker搭建MCSM面板,开我的世界服务器_第14张图片

如果是像我一样开启了两个终端机,在关闭docker容器的控制界面时要注意不要把所有终端机关闭

当然,这样非常的难受,而且每次重启容器都要再启动两个进程,那有没有更好的方法呢?

当然有的,那就是手动配置 MCSM 到 Linux 服务,这样就可以设置开机自启动面板,也就是开容器自启动

5、配置 MCSM 到 Linux 服务

此部分参考https://docs.mcsmanager.com/#/zh-cn/tutorial/to_service
为了避免一些未知的错误我们先把刚才开的两个终端或screen关掉

#安装systemctl
apt install -y systemctl
#安装vim
apt install -y vim

安装好vim后,开始配置

#将守护进程加入服务
vim /etc/systemd/system/mcsm-daemon.service
按i进入编辑模式,复制粘贴下面配置文件

[Unit]
Description=MCSManager Daemon

[Service]
WorkingDirectory=/opt/mcsmanager/daemon
ExecStart=${node_install_path}/bin/node app.js
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

[Install]
WantedBy=multi-user.target

再按esc建,输入英文模式的冒号":"在左下角出现冒号后输入wq保存并退出
群辉docker搭建MCSM面板,开我的世界服务器_第15张图片

#将面板端进程加入服务
vim /etc/systemd/system/mcsm-web.service
配置文件,其它的同上
[Unit]
Description=MCSManager Web

[Service]
WorkingDirectory=/opt/mcsmanager/web
ExecStart=${node_install_path}/bin/node app.js
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

[Install]
WantedBy=multi-user.target


然后再启动服务

systemctl start mcsm-{daemon,web}.service
systemctl enable mcsm-{daemon,web}.service               #设置开机(容器)自启动
systemctl start mcsm-{daemon,web}.service                #启动服务
systemctl restart mcsm-{daemon,web}.service              #重启服务
systemctl stop mcsm-{daemon,web}.service                 #停止服务

————————————————————————————————
我知道我写的第一篇教程并不好,怕有人不会,所以我把镜像commit出来了
安装第一步用下面的命令拉取镜像

docker pull registry.cn-hangzhou.aliyuncs.com/xialiuya/mcsmubuntu:3.0

拉取完了就可以启动但是在这个镜像就不能将装载路径设置为/opt
这个镜像可以不用设置存储空间
端口跟第二部一样设置也就是,23333,24444,25565
启动容器后直接使用 systemctl start mcsm-{daemon,web}.service 启动服务

你可能感兴趣的:(我的世界服务器搭建,docker,服务器,容器,linux,ubuntu)