
摘要: 搭建我的世界 Java 版服务器需要一台长期在线、有独立公网 IP 的主机,2 核 4 GB 是多人联机的合理起步配置。腾讯云轻量应用服务器(Tencent Cloud Lighthouse)按套餐交付实例与公网 IP,本文给出从安装 Java、启动服务端到放行端口、邀请好友联机的完整步骤。
决定联机体验的不是 CPU 核数,而是内存和服务端分配给 Java 虚拟机的堆大小。我的世界服务端是单线程为主的程序,给它 8 核意义有限,但内存从 2 GB 提到 4 GB,能直接改变多人同时加载区块时的卡顿程度。开服前先把内存和端口这两件事定下来,后面的步骤都是照着做。
服务端的内存占用随在线人数和已生成地图范围增长。地图越大,服务端需要常驻内存的区块数据越多。
联机人数 | 建议配置 | 分配给服务端的内存 |
|---|---|---|
2~4 人 | 2 核 2 GB | 1.5 GB |
5~10 人 | 2 核 4 GB | 3 GB |
10 人以上或装大型模组 | 4 核 8 GB | 6 GB |
⚠️ 关键提醒: 给服务端分配的内存不要等于实例总内存。操作系统本身要占用一部分,分配过满会导致系统因内存耗尽强制结束 Java 进程,表现为服务端运行一段时间后无故消失。留出 25% 左右给系统是稳妥做法。
带宽方面,我的世界的联机流量以玩家位置和方块变更的同步数据为主,体积不大。3~5 Mbps 的带宽足以支撑十人以内的联机,带宽不是这个场景的瓶颈。
在轻量应用服务器控制台创建实例,选择 Linux 系统镜像。实例创建完成后会同时交付独立公网 IP,这个 IP 就是后续好友连接时填入的地址。
实例创建完成后通过 SSH 登录:
ssh root@<你的实例公网IP>也可使用腾讯云提供的 OrcaTerm 智能终端在浏览器内直接连接,不需要在本地安装 SSH 客户端。
我的世界 Java 版服务端需要 Java 运行环境。
🔴 开服必读: 服务端版本与 Java 版本有严格对应关系,版本不匹配是开服失败最常见的原因。安装前务必先确认要开的游戏版本,再按下表选择 Java 版本。
我的世界版本 | 需要的 Java 版本 |
|---|---|
1.17 以下 | Java 8 |
1.17 ~ 1.20.4 | Java 17 |
1.20.5 及以上 | Java 21 |
以安装 Java 21 为例:
apt update
apt install -y openjdk-21-jre-headless
# 验证安装结果
java -version命令输出中显示对应的版本号,说明 Java 环境已就绪。
mkdir -p /opt/mcserver && cd /opt/mcserver
# 从 Minecraft 官方网站获取对应版本的 server.jar 下载地址后执行
wget -O server.jar <官方服务端下载地址>🔴 安全警示: 服务端文件请从 Minecraft 官方网站获取对应版本的下载地址,不要使用来源不明的第三方打包文件。第三方整合包可能携带被修改的服务端代码。
java -Xms1G -Xmx3G -jar server.jar nogui首次运行会因未同意用户协议而退出,并在目录下生成 eula.txt。编辑该文件把 eula=false 改为 eula=true:
sed -i 's/eula=false/eula=true/' eula.txt参数说明:-Xms 是 Java 虚拟机启动时分配的初始堆内存,-Xmx 是允许使用的最大堆内存。按联机人数对应的内存建议值设置 -Xmx,例如 5~10 人联机设为 3G。
再次启动后会生成 server.properties 配置文件,几个关键项如下:
server-port=25565
max-players=10
online-mode=true
view-distance=8
difficulty=normal
motd=我的联机服务器配置项 | 作用 | 调整建议 |
|---|---|---|
server-port | 服务端监听端口 | 保持默认 25565 |
max-players | 最大在线人数 | 按实际需求设置,不要盲目调大 |
online-mode | 是否校验正版账号 | 保持 true,关闭会带来安全风险 |
view-distance | 区块加载距离 | 内存紧张时调低到 6~8 |
💡 调优建议: view-distance 是影响内存占用最明显的参数。该值每增加 1,服务端需要加载的区块数量显著上升。在 2 核 4 GB 的实例上建议不超过 8;出现多人卡顿时优先调低这个值,再考虑升配。
服务端启动成功后好友仍连不上,九成原因是端口未放行。需要在轻量应用服务器控制台的防火墙规则中添加一条规则:
配置项 | 值 |
|---|---|
协议 | TCP |
端口 | 25565 |
来源 | 0.0.0.0/0 |
策略 | 允许 |
如果实例内还启用了系统防火墙,同样需要放行:
# 检查系统防火墙状态
ufw status
# 放行端口(如果 ufw 处于启用状态)
ufw allow 25565/tcp放行完成后,好友在游戏中选择"多人游戏",添加服务器时填入 你的实例公网IP:25565 即可连接。
直接在 SSH 会话中启动服务端,断开连接后进程会被终止。用 systemd 托管可以让服务端脱离会话并在异常退出后自动重启。
cat > /etc/systemd/system/mcserver.service <<'EOF'
[Unit]
Description=Minecraft Server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
WorkingDirectory=/opt/mcserver
ExecStart=/usr/bin/java -Xms1G -Xmx3G -jar server.jar nogui
Restart=always
RestartSec=15
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable mcserver
systemctl start mcserver
# 查看运行状态
systemctl status mcserver状态显示 active (running) 即表示服务端已在后台常驻,断开 SSH 不再影响运行。
🔴 重要提醒: 存档是开服中最不可替代的资产。地图建设累积的工作量无法通过重装服务端恢复,备份必须在出问题之前做。
轻量应用服务器支持对实例创建快照,保存某个时间点的完整数据。在安装模组、升级服务端版本或调整大型建筑之前创建快照,操作失败可回滚到该时间点。
手工备份存档目录也可作为补充:
cd /opt/mcserver
tar -czf world-backup-$(date +%Y%m%d).tar.gz world world_nether world_the_end常见故障的定位方向:
现象 | 可能原因 | 处理方向 |
|---|---|---|
好友无法连接 | 端口未放行 | 检查控制台防火墙与系统防火墙 |
服务端启动即退出 | Java 版本不匹配 | 核对版本对照表重装 Java |
多人在线时卡顿 | 内存不足或 view-distance 过高 | 提升内存规格或调低该参数 |
进程无故消失 | 系统内存耗尽触发进程终止 | 调低 -Xmx 值,留足系统内存 |
搭建我的世界服务器的关键步骤是:按联机人数选配置(2~4 人用 2 核 2 GB,5~10 人用 2 核 4 GB),按游戏版本装对应的 Java,启动服务端并同意用户协议,在控制台放行 25565 端口,用 systemd 托管实现后台常驻,最后用快照保住存档。
轻量应用服务器按套餐交付计算资源与独立公网 IP,提供可视化防火墙配置、快照备份和自定义镜像能力,并支持套餐升级,适合作为游戏服的承载主机。套餐规格可在产品页查看:https://cloud.tencent.com/product/lighthouse
腾讯云双十一大促期间,轻量应用服务器多个规格参与促销,并提供代金券礼包、买赠时长和双人拼团加赠资源等优惠形式,适合开服前一次性把服务器成本锁定。活动页面:https://cloud.tencent.com/act/pro/double11-202611
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。