无需云服务商,运行您自己的Minecraft服务器

搭建Minecraft服务器很容易,让它一直在线才是麻烦所在。
如果您想要一个好友可以加入的世界,就需要一个运行服务器的地方。传统上,这意味着在自己的电脑上自托管、租用VPS,或付费使用专门的Minecraft托管服务。
但说到底,Minecraft服务器只是一个需要算力、网络和足够运行时间的软件。这意味着除了上述传统方案之外,还有更多方式可以自托管它。
本指南将在Acurast网络中一部已接入的手机(Processor)上部署Minecraft服务器。为此,本指南将使用开发者功能“Cargo”,即Acurast基于Linux的运行时。接下来将配置部署、启动服务器、将其暴露到您的本地网络,并直接从Minecraft连接。
完成后,您将拥有一个运行在Acurast Processor上、可以直接游玩的Minecraft世界。
Minecraft同样是一种算力工作负载
说到去中心化算力,Minecraft可能不是人们首先想到的应用。而这恰恰让它成为一个有趣的例子。
Minecraft服务器与其他应用有许多相同的需求:它需要运行时、网络连接、持续运行,以及足够为用户提供服务的计算资源。传统上,这些需求会让开发者转向云基础设施。
但并非一定如此。
Acurast提供一个全球去中心化的Processor网络,应用可以运行在分布式算力资源上,而不必完全依赖传统云服务器。
借助Codename Cargo,这一点变得更加强大。Cargo标志着Acurast从以Node.js为主的运行时,迈向完整的基于Linux的容器。
Cargo让开发者可以运行使用Python、Go、Rust、C++以及其他可在Linux上运行的技术构建的软件。它还让以前的环境中难以运行的应用得以部署。
其中就包括Minecraft。
因此,Minecraft示例不仅仅是一次运行游戏服务器的实验。它以一种简单的方式展示了:当去中心化Processor能够运行通用Linux工作负载时,会有哪些新的可能。
在Acurast上部署Minecraft
Acurast提供了一个Minecraft示例应用,其中大部分所需设置已经配置好。这意味着您可以主要专注于配置和启动部署。
第1步:打开Minecraft示例应用
首先,检出Acurast示例应用代码库,并进入App Cargo Minecraft文件夹。
该项目包含准备Minecraft服务器所需的脚本和配置,以及用于创建使其可被访问的隧道的脚本和配置。
其中大部分内容都无需修改。
示例已经配置好处理底层设置,因此您主要需要提供的就是部署配置。
第2步:配置部署
打开环境配置,填写所需的值。
第一项是您的Acurast助记词。它用于授权部署,并支付相关的网络费用。
接下来,配置一个SSH密码。
通常情况下,您无需通过SSH登录Processor,因为Minecraft部署是自动完成的。不过,配置访问权限依然很有用,因为万一出现异常,您可以借此对Processor进行排查。
您还需要一个回调URL。
部署可用后,Acurast会通过这个端点返回信息。如果只是简单测试,可以使用一个webhook服务来提供接收生成的部署信息的端点。
部署可以保持配置为mainnet(主网)。
根据示例应用的当前版本,您可能还会看到一个域名后缀选项。它用于将部署对外暴露。Acurast正在努力让这一过程更加自动化,因此随着Cargo的发展,这项配置可能会有所变化。
第3步:检查acurast.json
部署之前,值得快速查看一下acurast.json配置。该文件控制更多部署参数,包括工作负载应保持运行多长时间。例如,为了快速测试,您可以将Minecraft服务器配置为运行四小时。
如果是更长的游戏时段,或是好友会经常加入的服务器,您需要相应地调整部署时长。您还应确保部署以所需的Android版本为目标,因为较旧的Processor环境可能不具备Minecraft示例所需的全部功能。
完成这些之后,就可以开始部署了。
启动Minecraft服务器
在项目目录中运行:
acurast deploy
Acurast CLI会引导您完成剩余的部署流程。
在确认部署之前,您会看到部署参数和相关费用。如有需要,您可以在提交前调整费用。
确认后,Acurast便开始为该工作负载寻找并准备一个Processor。
接下来,大部分工作都会自动完成。Processor会准备环境、安装所需组件、下载Minecraft服务器、启动服务器,并建立用于访问该部署的隧道。几分钟后,服务器应该就准备就绪了。
检查一切是否正常运行
部署日志可以让您清楚地了解Processor上正在发生什么。
部署启动时,您会看到各个组件依次被安装和初始化。
最终,日志会显示Minecraft服务器已启动、隧道已连接。日志中还会提供下一步所需的连接信息。
此时,Minecraft已经在一个Acurast Processor上远程运行。
接下来只需让客户端能够访问它。
将Minecraft连接到服务器
还需要一个额外的网络步骤。由于Minecraft客户端处理端口和证书的方式,该示例使用一条命令将远程Minecraft服务器暴露到您的本地网络。
运行部署提供的命令。
系统会要求您输入之前配置的SSH密码。验证通过后,连接即建立,Minecraft服务器便可在本地访问。
现在打开Minecraft。
选择Add Server(添加服务器),并输入部署提供的服务器信息。
保存服务器。
如果一切配置正确,Minecraft应该会立即开始从服务器获取信息。
点击连接。
现在,您正在一个运行在Acurast Processor上的Minecraft世界中游玩。
邀请您的好友
服务器运行后,同样的设置可以用来创建多人游戏环境。世界不再保存在您自己的电脑上,游戏服务器会在Acurast部署期间远程运行。
把相应的连接信息分享给好友,他们就可以加入同一个世界。
有一个实际问题值得注意:位置很重要。游戏服务器对延迟很敏感。如果您身在西欧,而托管您Minecraft服务器的Processor远在他处,您可能会感到一些卡顿。一般来说,离玩家更近的Processor能带来更好的体验。对许多应用来说,多出的几毫秒几乎察觉不到。
但当您正拼命躲避苦力怕(Creeper)时,这几毫秒就重要得多了。
不只是一台Minecraft服务器
部署Minecraft很有趣,但更有意思的是这个示例所代表的意义。
Minecraft服务器并不是专门设计的区块链应用,也不是为受限的去中心化运行时专门编写的小型JavaScript函数。它是一个现成的应用,需要的是Linux环境和计算资源。
而它可以在Acurast上运行。
这正是Cargo带来的更广泛的变化。
转向基于Linux的容器工作负载,扩展了开发者可以在Acurast网络上部署的内容。游戏服务器只是一个例子,同样的模式也为对象存储、后端服务、API、开发者工具、自动化平台、AI智能体,以及其他传统上托管在中心化基础设施上的应用打开了大门。
问题不再那么是:
“能专门为去中心化算力构建什么?”
而更多是:
“有哪些软件可以运行在去中心化算力上?”
Minecraft给出了一个出人意料的好答案。
相当多。
观看完整视频教程
本指南介绍了核心部署流程,配套视频则在屏幕上完整演示了整个设置过程。
您将看到如何配置Minecraft示例应用、使用Acurast CLI进行部署、跟踪Processor日志、建立本地连接,以及加入最终生成的Minecraft世界。
跟着视频一起操作,尝试在Acurast上部署您自己的Minecraft服务器。
然后,邀请几位好友加入吧。


