参考:
威联通NAS使用Container搭建我的世界服务器,带网页管理面板
Ubuntu下怎么退出vim编辑器
我的世界MCSM面板搭建

关于威联通nas开mc服务器的网上教程甚少,写篇博客预防日后忘记

我的nas是TS-453Dmini,4核8G内存

前置准备:

  1. 有公网IP(没有公网IP需要内网穿透,会增加延迟)
  2. 光猫改桥接模式,路由器可以实现端口映射

正文

Minecraft服务器的本质就是用一台电脑持续运行服务端,所以我们的处理思路就是在nas中开一个虚拟机一直运行服务端。刚好可以用威联通的Container Station这个APP提供的容器,直接在商城搜索即可
在这里插入图片描述

因为Linux内核的操作系统比windows性能更好,所以这里用Ubuntu 18.04。打开Container Station,点击右侧的创建,直接搜索ubuntu找到对应版本的映像安装即可

在这里插入图片描述
安装之前可以先自己建两个文件夹用于挂载数据,这里backup文件夹是我自己备份用的,不需要建,只需要建root和opt即可:
在这里插入图片描述
更改一下ubuntu的安装选项:

网络里:

我个人喜欢更改网络为桥接模式(bridge),如果选择NAT模式需要自己映射一下端口,相关端口有:

23333:web页面的端口
25565:服务器进入的端口

在这里插入图片描述
共享文件夹:

更改一下挂载的路径
在这里插入图片描述
其他设置根据自己的需求更改即可,我都选择默认了

在这里插入图片描述

来到虚拟机页面,点击终端机,输入 su 进入管理员模式

在这里插入图片描述
在这里插入图片描述

因为默认的国外下载源很慢,这里先更换一下中科大的下载源:

# 换源(中科大)
sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
apt-get update

在这里插入图片描述
然后就是Container Station开ubuntu的通病了,vi用不了,所以把原来的vi卸掉重装一遍

#卸载并重新安装vi(解决方向键乱码问题)
apt-get remove vim-common
apt-get install vim

中途让输入y/n,输一下y再回车就行了
在这里插入图片描述
然后安装java环境,这里以1.18.1为例,需要用到jdk17,我选择从官网下载:

# 安装wget
apt-get install wget
# 安装java环境:
cd ~
# 下载JDK安装包
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
# 创建安装目录
mkdir /usr/local/java/
# 解压当前目录下的JDK压缩文件
tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/java/

然后需要手动配置一下环境变量

# 设置环境变量
vi /etc/profile

在末尾添加对应变量:
滚动光标到末尾 按下 键盘上的 i 键,切换至插入模式
输入下面这几串内容后 按ESC退出插入模式
然后按下 Shift + ; 接着输入 wq 并回车保存

export JAVA_HOME=/usr/local/java/jdk-17.0.3.1
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
# 应用修改后的环境变量
source /etc/profile
# 软链接程序到环境变量中
ln -s /usr/local/java/jdk-17.0.3.1/bin/java /usr/bin/java

以上jdk就安装完毕了,检查一下是否正常,如果和下图一样可以正常显示就是安装成功了

# 测试是否安装正常,显示 java version "17.0.2" 则为正常
java -version

在这里插入图片描述
然后安装Minecraft服务端管理面板,这里选择mcsm

这里使用screen使管理面板可以在后台运行,相关使用博客参考:Linux后台运行程序最实用的两种方式

#安装mcsm(管理面板)
apt install screen
apt install git
# 切换到安装目录
cd /opt/
# 下载运行环境
wget https://npm.taobao.org/mirrors/node/v12.16.1/node-v12.16.1-linux-x64.tar.gz
# 解压文件
tar -zxvf node-v12.16.1-linux-x64.tar.gz
# 链接程序到环境变量中
ln -s /opt/node-v12.16.1-linux-x64/bin/node /usr/bin/node
ln -s /opt/node-v12.16.1-linux-x64/bin/npm /usr/bin/npm
# 克隆仓库
git clone https://gitee.com/Suwingser/MCSManager.git

因为我们需要让服务端持续运行,但终端在我们关闭后就会自动关闭,所以我们可以利用screen完成我们的需求,下面让服务端在screen中运行即可:

# 进入目录
cd /opt/MCSManager/
# 创建一个名为 mcsm 的窗口
# 在此新终端窗口内启动面板
screen -S mcsm
# 安装依赖库
npm install
# 启动面板
npm start 
# 关闭面板使用 Ctrl+C 快捷键即可

出现这个画面就是开启成功了
在这里插入图片描述
web端的 IP 就是我刚才设置的 192.168.2.6,端口号是 23333,直接浏览器里输入http://192.168.2.6:23333 就可以看到登录界面了,账号和密码分别是 #master 和 123456

如果上面Container Station里网络设置的是 NAT ,那么 IP 是你 nas 的 IP,端口就是你映射的端口了
在这里插入图片描述
登录后的页面
在这里插入图片描述
然后就可以愉快的开服了,这里以最简单的原版纯净服为例,点击服务端管理
在这里插入图片描述
在点击创建新实例应用

在这里插入图片描述
选择引导创建
在这里插入图片描述
把官方的服务端,也就是.jar文件上传就可以了,其他配置都默认

在这里插入图片描述
创建成功后依次点击终端开启,就开好服啦

在这里插入图片描述
在这里插入图片描述
一些默认配置可以到 server.properties 中更改,这里不多赘述了,开启服务器后服务端的终端大概显示这样:
在这里插入图片描述
此时服务器的 IP 和上文提到的一样,端口改为了 25565 ,只不过在mc客户端中只需要输入 IP 他默认访问的就是 25565 这个端口

然后在路由器上将端口映射一下,就可以直接通过你家的公网 IP 进入游戏啦

在这里插入图片描述
在这里插入图片描述

写在后面

在自己摸索的过程中,看到有很多人的过程中都需要处理ssh连接或FTP连接,但实际操作过程中,感觉这个过程可有可无,所以干脆阉割掉了。不知道是稳定性还是一些其他方面会受到影响,有大牛可以指点一下,或者日后再踩坑了会回来补充。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐