前置需求

注意:本教程的服务端仅适用于java版本的Minecraft客户端(游戏版本1.6.5)。

硬件需求:至少2核CPU,至少2G内存(推荐4G起步,内存大小关乎游戏的渲染范围,越大越好),不低于10G的硬盘空间。

软件环境需求:能够安装Docker的操作系统,推荐使用Linux发行版:例如Ubuntu 20.04 ,以及Debian10,Centos 7(即将停止支持);Windows10,11也可以安装桌面版的Docker(不推荐)。

网络需求:能够流畅连接国际互联网

安装 Docker 和 Docker-Compose

Linux安装

参见 http://geeklab.top/Docker/936b9f19945c/

Windows安装

下载链接https://www.docker.com/products/docker-desktop/

创建目录和docker-compose文件

1
2
3
4
cd ~/docker-compose-data/
mkdir mc_server
cd mc_server
vim docker-compose.yaml

编辑docker-compose

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
version: "3"
services:
mc-server:
image: itzg/minecraft-server
container_name: "MCServer"
ports:
- 25565:25565
environment:
SERVER_NAME: Minecraft-Server
EULA: TRUE
# TYPE: FORGE # 允许协议
ONLINE_MODE: FALSE # 服务器正版认证开关
VERSION: 1.16.5 # 游戏版本号
# ENABLE_RCON: true # RCON开关
# RCON_PASSWORD: "4f6fr2bt" # RCON控制密码
# RCON_PORT: 28016 # RCON远程连接端口
VIEW_DISTANCE: 4 # 显示最大区块
DIFFICULTY: peaceful # 游戏难度
MODE: survival
#
FORGEVERSION: "RECOMMENDED"
#
CONSOLE: "false"
#
SNOOPER_ENABLED: "false"
#
NETWORK_COMPRESSION_THRESHOLD: 512
MOTD: "Server in §l§cWuLanBaTuo§r" # 服务器描述
MAX_PLAYERS: 10 # 服务器最大人数
GENERATE_STRUCTURES: true
PVP: "true" # PVP开关
INIT_MEMORY: 512M # 初始化内存大小
MAX_MEMORY: 1024M # 最大内存大小
USE_AIKAR_FLAGS: "false"
#
ALLOW_FLIGHT: false # 是否允许飞行
SPAWN_NPCS: true # 决定是否生成村民
SPAWN_MONSTERS: true # 确定是否会生成怪物
ALLOW_NETHER: true # 允许玩家前往下界
ENABLE_COMMAND_BLOCK: true # 启用命令方块
volumes:
- ./mc-data:/data
restart: unless-stopped

启动服务端

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
cd ~/docker-compose-data/mc-server/
docker-compose up -d #启动服务器
-----------------------------------------------
[+] Running 2/2
✔ Network mc_server_default Created 0.2s
✔ Container MCServer Started 0.5s
-----------------------------------------------
# 显示以上状态证明启动完成

docker ps
------------------------------------------------
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5252b0729c3e itzg/minecraft-server "/start" 4 seconds ago Up 3 seconds (health: starting) 0.0.0.0:25565->25565/tcp, :::25565->25565/tcp MCServer
----------------------------------------------------
# (health: starting)证明服务器正在启动中,此时服务器可能会出现卡顿现象。
# (healthy)证明服务器启动完成。

通过Windows上的客户端访问服务器

推荐使用Hello Minecraft! Launcher启动器,具有支持导入 Curse、MultiMC 整合包,创建游戏并安装 Fabric、Forge、LiteLoader、OptiFine,支持导出 HMCL、MultiMC 整合包等功能。

通过启动器进入游戏

hmcl

点击启动游戏后,进入Minecraft1.16.5

mc1

点击多人游戏(无法点击:在启动器内登录微软账户)

mc2

输入游戏服务器ip,不用输端口号

mc3

添加后直接连接服务器