手把手教你在centos上搭建Minecraft(基岩版)服务器 您所在的位置:网站首页 herobrinemodPE基岩版 手把手教你在centos上搭建Minecraft(基岩版)服务器

手把手教你在centos上搭建Minecraft(基岩版)服务器

2024-05-31 09:15| 来源: 网络整理| 查看: 265

一、概述:

事前准备:一台云服务器或搭载了centos操作系统的个人设备,如虚拟机(本文假定你已经了解并且购买了云服务器,并且对Linux操作命令有一定了解)

搭建方式:方式有两种,我先讲解一下使用官方的BDS如何搭建。再讲解如何使用LiteLoaderBDS搭建(该方法支持所有Linux环境)。 我个人是推荐使用LiteLoaderBDS来搭建的,因为可扩展性更高,提供高度自定义的api,可自由安装插件和自行编写插件,支持热更新插件,以及更好的社区环境,具体可参考LiteLoaderBDS。 若你想直接参考LiteLoaderBDS搭建方式,则直接查阅第五步。

ps: 最近好像搭服务器的人越来越多了,我本想着这篇文章可以留作笔记供日后再想开服时作为参考的,可在我写完这篇文章之后,我发现在我的服务器上出现了一系列异常的情况,比如内存泄漏,服务端假死等。为了不让后来的朋友们踩这个坑,我在此声明一下:目前该文章的搭建方法在centos服务器中可能会存在严重的内存泄露问题,即内存只增不减直至爆满崩服,无法判断该问题是由Liteloader加载器造成还是BDS官方服务端造成。我推荐各位直接在云服务器中安装windows server操作系统来搭建该服务器,这将使你的服务器运行起来更加稳定。运行过程中请避免使用鼠标点击cmd终端窗口,该操作将大概率会使你的服务器进入假死状态。如果在搭建过程中遇到问题欢迎在评论区留言,我看到后会第一时间解答。

二、下载官方服务器包: 进入官网下载,进去之后有个弹窗,告诉你去下网易国服版,我们点击那个很隐秘的按钮把他关掉。 image.png 往下翻选择ubuntu server,勾选协议,鼠标右键点击download按钮,复制下载地址: image.png 接下来使用远程连接工具连接云服务器,并执行命令 dnf install wget -y下载wget工具,等待安装完成(dnf是从centos8开始就自带的包管理工具,比yum更方便更好用,会自动下载安装所属依赖,若你的服务器为centos7,则可手动安装dnf:yum install dnf -y,再执行上述命令,若你不想用dnf,也可直接使用yum来安装)。 创建文件夹mkdir mcbe,进入文件夹cd mcbe 接下来在这个文件夹中执行:wget https://minecraft.azureedge.net/bin-linux/bedrock-server-1.18.12.01.zip,这个地址是你刚才在官网所复制的地址。注意版本号:1.18.12.01 对应的是你游戏客户端的版本号,检查自己客户端的版本号,你可以修改这个地址中对应版本号与你客户端版本号保持一致,这将下载对应版本的服务器包。 等待下载完成后解压包:unzip bedrock-server-1.18.12.01.zip,若没有unzip工具,执行dnf install unzip -y安装即可。 三、使用docker创建ubuntu容器运行环境:

因官方包只支持在ubuntu环境下运行,在centos下运行会缺少公共依赖库,当然也可通过特殊方法解决这个问题,但是太过麻烦,所以我们干脆使用docker容器创建运行环境,这样不仅解决了运行环境的问题,也方便管理,并且还可以在多个容器下创建多个服务器。

安装docker:dnf install docker-ce -y 启动docker服务:systemctl start docker 设置开机自启动docker服务:systemctl enable docker 拉取ubuntu镜像:docker pull ubuntu 查看镜像: [root@mihu ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest 54c9d81cbb44 4 weeks ago 72.8MB 使用ubuntu镜像创建容器: docker run -dit -p 6666:6666/udp -v /mcbe:/mcbe --restart=always ubuntu:latest /bin/bash 直接复制该命令并执行即可。 docker run指创建一个容器。 -d意思是进程守护模式默认不会进入容器,-it打开标准输入伪终端,这三个参数缺一不可。 -p 6666:6666表示将容器内的服务器端口(后面的6666),映射到宿主机的6666端口(前面的6666),注意:这两个端口号最好保持一致,若不一致,即使宿主机映射端口被开放也将触发bug(游戏内服务器列表显示延迟红点,但其实可以进入服务器的bug,也不知道是不是bug,但为了这个问题我处理了很久),Minecraft基岩版服务器使用的是udp协议故加上/udp。 -v /mcbe:/mcbe表示将宿主机中的mcbe文件夹(第二步创建的)映射(挂载)到容器中的mcbe文件夹中,方便我们直接在宿主机管理并配置服务器。若你需要创建多个服务器,则重复按照以上方法创建多个容器,然后将mcbe文件夹复制出多份,且名称不重复即可。多个容器映射不同的文件夹,即(mcbe1,mcbe2)等,具体请自行摸索,或查看相关文档。 查看容器: [root@mihu ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5a9e86570a47 ubuntu:latest "/bin/bash" 23 seconds ago Up 21 seconds 0.0.0.0:6666->19132/udp, :::6666->19132/udp jovial_taussig

复制打印出来的容器id,我的是 5a9e86570a47

进入容器:docker exec -it 5a9e86570a47 /bin/bash image.png 四、修改配置并启动服务器: 更新包管理工具apt update 安装vim编辑器 apt install vim -y 安装tmux会话管理器 apt install tmux -y 进入mcbe文件夹中 cd mcbe 编辑服务器配置文件 vim server.properties :按下i进入编辑模式, image.png

若你希望玩困难模式,则将:difficulty=easy 修改为 difficulty=hard

将挂机踢出修改为player-idle-timeout=0(无论挂机多久,不踢出,单位为分钟)

最大线程修改为:max-threads=0(0为尽可能保持最大线程)

修改服务器端口:server-port=6666(这里的端口号需和容器开启时设置的端口号一致,默认为19132)

开启白名单:allow-list=true

按下Esc并输入:wq保存退出 其他配置请查看mcbe文件夹下的bedrock_server_how_to.html英文文档,或百度其他。

执行tmux命令创建新会话 在该会话下执行LD_LIBRARY_PATH=. ./bedrock_server命令启动服务器。若看到该打印信息表示启动成功: image.png 按下接着按d退出该会话并保持后台运行,下次如果想进入会话查看则直接执行 tmux attach。 退出容器:exit(退出后容器仍然保持后台运行)。下次进入还是使用命令:docker exec -it 5a9e86570a47 /bin/bash

一些关于tmux的其他命令:

新建会话并取名 tmux new -s 查看会话列表: tmux ls 杀死会话进程:tmux kill-session -t 切换会话: tmux switch -t 重命名会话: tmux rename-session -t 五、使用LiteLoaderBDS搭建方式:

搭建前提:已安装docker 若未安装请操作以下步骤:

安装docker:dnf install docker-ce -y 启动docker服务:systemctl start docker 设置开机自启动docker服务:systemctl enable docker 官方对LiteLoaderBDS的描述:

LiteLoaderBDS 是一个非官方的 Minecraft 服务端插件加载器,为基岩版官方服务端Bedrock Dedicated Server(以下简称BDS)提供插件开发支持 和 插件加载服务,弥补了官方行为包开发接口长期以来存在的一些不足。

拉取LiteLoader镜像,执行: docker pull shrbox/liteloaderbds。 该镜像占用2.6G的大小,下载下来有些费劲,如果你跟我一样下载速度很慢,则需要更换docker镜像源,如果你下载的速度够快,则忽略以下步骤: 执行命令 vim /etc/docker/daemon.json编辑daemon.json文件,默认该文件是不存在的,不过我们仍然可以执行该命令,因为vim会自动帮我们创建这个文件。 按下i进入编辑模式,然后写入以下配置信息: { "registry-mirrors": ["https://registry.docker-cn.com"] } https://registry.docker-cn.com为中国官方镜像源。 接下来按Esc退出编辑模式,然后按下并输入:wq然后回车,退出保存。 重启docker服务systemctl restart docker,接着再执行docker pull shrbox/liteloaderbds命令,就会发现下载速度蹭蹭往上涨了。 拉下来镜像之后,创建容器:docker create --name liteloader -p 6666:6666/udp -v liteloaderbds:/home/bds/bds -i -t shrbox/liteloaderbds [root@mihu _data]# docker create --name liteloader -p 6666:6666/udp -v liteloaderbds:/home/bds/bds -i -t shrbox/liteloaderbds a02453350504ec839c1c4c5775abc4cf07778ecb4c4e243493394425cc79c72d

注意:这个命令一个字母也不要错。 -v 参数后面跟的是 liteloaderbds:/home/bds/bds,表示创建具名挂载卷liteloaderbds,映射到容器内/home/bds/bds路径下,该路径为服务器程序包所处位置,挂载后方便我们在宿主机上直接操作服务器的配置文件。

创建完成后,我们对挂载卷做一个软连接。进入到属主目录,或其他你存放东西的目录。 cd ~ ,然后执行命令:ln -s /var/lib/docker/volumes/liteloaderbds/_data/ ./liteloader,这样以后就可以直接在属主目录下对服务器文件进行操作,我们打印列表查看一下:

image.png 发现软连接创建成功,cd _data进入查看一下: image.png 列表中就是该容器创建的服务器文件了。

在当前目录下编辑服务器配置文件 vim server.properties :按下i进入编辑模式:

image.png

若你希望玩困难模式,则将:difficulty=easy 修改为 difficulty=hard 将挂机踢出修改为player-idle-timeout=0(无论挂机多久,不踢出,单位为分钟) 最大线程修改为:max-threads=0(尽可能保持最大线程) 修改服务器端口:server-port=6666(这里的端口号需和容器开启时设置的端口号一致,默认为19132) 按下Esc并输入:wq保存退出

修改完以后启动容器:docker container start liteloader

其他的命令:

强制停止服务器(不推荐):docker container stop liteloader 进入控制台(服务器终端):docker attach liteloader 退出控制台:按下 Ctrl + P + Q。如果按下 Ctrl + C,服务器进程将会终止。

插件的使用:在社区下载插件,并将插件直接放入服务器目录下的plugins文件夹中即可,然后执行docker container restart liteloader重启容器即可,这里我推荐一个提供插件的社区minebbs,可自行查找下载。

liteloader的一些终端命令:

ll list 列出 当前加载的所有插件列表

ll load ./plugins/xxxx.js 热加载 位于指定路径的插件。路径是相对于 BDS 根目录的相对路径。

ll unload xxxx.lua 热卸载 在插件列表中名为 xxxx.lua 的插件

ll reload xxxx.dll 重新加载 在插件列表中名为 xxxx.dll 的插件

ll reload 重新加载 插件列表中的所有插件

ll version 输出当前安装的 LL 版本

ll upgrade 手动检查 LiteLoaderBDS 自动更新

六、最后工作:

进入自己的云服务器后台=>防火墙配置页,开放6666端口(我这里是腾讯云,阿里云应该叫‘安全组’)

image.png 注意:协议为:UDP 接下来进入游戏,服务器=>添加服务器,服务器名称随便填,服务器地址:输入云服务器的公网ip,端口:6666,保存后若能成功进入游戏,则表示服务器搭建成功。

七、终端指令:

设置管理员: op "玩家ID"

开启死亡不掉落: gamerule keepInventory true

显示坐标: gamerule showcoordinates true

加入白名单: allowlist add 玩家名称

从白名单移除: allowlist remove 玩家名称

每次删除或加入之后需重载白名单: allowlist reload

八、总结:

在centos上搭建Minecraft基岩版服务器稍微麻烦了一些,Windows搭建的话直接把包下载下来执行可执行文件就ok了,其他相关信息、搭建方式、插件下载以及服务器的配置教程请前往社区查找:minebbs。

有任何技术方面的问题或者想加入我的服务器一起玩耍的,都可以添加我的微信:bishu0913。

转载请注明出处。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有