本文最后更新于 2025-09-11T10:01:28+00:00
1. 安装Docker:
- 确保已按照之前的教程安装好Docker和Docker Compose,不会的可查看Docker安装教程
2. 硬件要求:
- 最低2GB内存(推荐4GB以上,尤其对于Mod服)
- 稳定的网络连接
- 至少10GB空闲磁盘空间
二、搭建基础Minecraft服务器(Vanilla纯净服)
1. 创建服务器目录结构
1 2
| mkdir -p ~/minecraft/server cd ~/minecraft/server
|
2. 创建docker-compose.yml配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| version: '3.8'
services: mc-server: image: itzg/minecraft-server container_name: mc-vanilla restart: always environment: - EULA=TRUE - VERSION=1.20.1 - TYPE=VANILLA - SERVER_NAME="TanZp的MC服务器" - MAX_PLAYERS=10 - ONLINE_MODE=true - MEMORY=2G ports: - "25565:25565" volumes: - ./data:/data tty: true stdin_open: true
|
3. 启动服务器
4. 查看服务器日志(重要)
5. 连接服务器
在Minecraft客户端中,通过直连输入服务器IP(本地测试用localhost,外网需端口映射)和端口25565即可连接
三、搭建Mod服务器(以Forge为例)
1. 创建Mod服目录
1 2
| mkdir -p ~/minecraft/mod-server cd ~/minecraft/mod-server
|
2. 创建docker-compose.yml配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| version: '3.8'
services: mc-forge: image: itzg/minecraft-server container_name: mc-forge restart: always environment: - EULA=TRUE - VERSION=1.20.1 - TYPE=FORGE - FORGE_VERSION=47.1.0 - SERVER_NAME="TanZp的Mod服务器" - MAX_PLAYERS=8 - ONLINE_MODE=false - MEMORY=4G - MODS_DOWNLOAD_DIRECTORY=/data/mods ports: - "25565:25565" volumes: - ./data:/data - ./mods:/data/mods tty: true stdin_open: true
|
3. 安装Mod方法
方法一:手动添加Mod
- 创建mods目录:
mkdir -p ./mods
- 下载与服务器版本匹配的Mod(.jar文件)
- 将Mod文件放入
./mods目录
- 重启服务器:
docker compose restart
方法二:通过配置自动下载Mod
在docker-compose.yml中添加MODS参数:
1 2 3
| environment: - MODS=https://mediafilez.forgecdn.net/files/4676/769/Create_1.20.1_v0.5.1.f.jar,https://mediafilez.forgecdn.net/files/4683/246/ jei-1.20.1-forge-15.2.0.28.jar
|
注:使用逗号分隔多个Mod的下载链接(推荐从CurseForge获取)
4. 管理Mod配置
所有Mod配置文件会保存在./data/config目录下,可直接编辑后重启服务器生效
四、地图管理
1. 上传现有地图
停止服务器:docker compose down
将地图文件夹(如my_world)复制到./data目录
修改配置文件./data/server.properties:
1
| level-name=my_world # 设置为你的地图文件夹名称
|
启动服务器:docker compose up -d
2. 备份地图
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| cat > backup.sh << 'EOF'
TIMESTAMP=$(date +"%Y%m%d_%H%M%S") BACKUP_DIR=~/minecraft/backups mkdir -p $BACKUP_DIR
zip -r $BACKUP_DIR/mc_world_$TIMESTAMP.zip ~/minecraft/mod-server/data/world
ls -tp $BACKUP_DIR/*.zip | grep -v '/$' | tail -n +31 | xargs -I {} rm -- {} EOF
chmod +x backup.sh
./backup.sh
|
3. 自动备份(定时任务)
1 2 3 4
| crontab -e
0 2 * * * ~/minecraft/backup.sh
|
五、服务器配置优化
1. 调整服务器属性
编辑./data/server.properties文件,常用配置:
1 2 3 4 5 6
| motd=欢迎来到TanZp的MC服务器 # 服务器列表显示的消息 difficulty=normal # 难度:peaceful, easy, normal, hard gamemode=survival # 游戏模式:survival, creative, adventure, spectator pvp=true # 是否开启PVP spawn-protection=16 # 出生点保护范围 view-distance=10 # 视野距离
|
2. 优化性能
创建./data/user_jvm_args.txt文件添加JVM参数:
1 2 3 4 5 6 7 8
| -Xms2G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch
|
六、常用服务器管理命令
1. 进入服务器控制台:
1 2
| docker exec -it mc-forge bash
|
2. 常用控制台命令:
1 2 3 4 5 6
| list kick <玩家名> [原因] ban <玩家名> [原因] op <玩家名> save-all stop
|
3. 从外部发送命令:
1 2
| docker exec mc-forge rcon-cli "say 服务器将在5分钟后重启!" docker exec mc-forge rcon-cli stop
|
七、更新与维护
1. 更新服务器版本:
- 停止服务器:
docker compose down
- 修改docker-compose.yml中的VERSION和FORGE_VERSION
- 启动服务器:docker compose up -d
2. 更新Mod:
- 停止服务器
- 替换./mods目录中的Mod文件
- 启动服务器并查看日志确认是否有冲突
3. 清理空间:
1 2 3 4 5
| docker system prune -a
rm -rf ~/minecraft/backups/old_backup_files
|
通过以上步骤,你可以搭建一个功能完善的Minecraft服务器,支持Mod管理、地图备份和性能优化。如果需要开设多人公开服务器,还需在路由器设置端口映射,并考虑使用DDNS服务来解决动态IP问题。