MC 开服最简单干净的方法, 跟好友一起联机

gmero ·

本教程的实操场景是搭建私人服务器与好友联机,没有复杂炫酷的管理界面,一切都是基于 Docker,需要有一些 Linux/Docker 的基础知识,本文出现的设备、服务等并非推广,均为自己实际购入和使用的

在存储价格还没有超级加倍的时候,因为一些学习需求,购入了零刻EQ12 Pro白色的小主机,巴掌大,配置是 i3-N305 16 + 500 的配置,当时花了 1599,到现在也用了3年多了,期间花了几十换过网卡(自带的网卡开不了 ap),换过一次风扇(异响),其他都还挺稳定的,部署了 PVE。虽然配置不高,但完全满足我的需求了,上学的时候就开过 mc 服务器,三四个人玩是没有问题的,当时还是用的 mcsm 开服的,但部署、配置啥的还是有些麻烦,比较适合大型服务器,最近发现了一个开源项目部署 mc 非常方便,很适合我的使用场景,特别是它的模组自动下载,自动解析模组依赖,非常方便

项目地址:https://github.com/itzg/docker-minecraft-server

项目介绍

这个项目提供了一个 Docker 镜像,让你能够部署各个版本、各个服务端的 JAVA 我的世界服务器,可以在官方的 examples 下看到一些例子,还有官方的 wiki 对项目功能进行了更详细的介绍,对于我来说,我觉得最重要的就是一下几点

  • 部署方便,docker-compose 部署,一次性完成游戏版本,服务端,模组,插件等设置
  • 自动下载模组插件,匹配版本兼容性,自动识别模组依赖,并下载依赖的模组
  • 自动进行 EULA、Online_mode 等常用属性的配置

部署实战

确保安装好了 Docker 和 Docker Compose,我因为使用了 1panel 面板,这些已经提前安装好了,然后我们新建 yaml 文件

services:
  minecraft:
    image: itzg/minecraft-server:latest
    container_name: minecraft
    restart: unless-stopped
    ports:
      - "25565:25565"
    environment:
      EULA: "TRUE"
      TYPE: "FABRIC"
      VERSION: "26.2"
      MEMORY: "4G"

      MAX_PLAYERS: "10"
      VIEW_DISTANCE: "10"
      SIMULATION_DISTANCE: "6"
      DIFFICULTY: "normal"
      MODE: "survival"

      # 允许不经过正版账号验证的客户端连接
      ONLINE_MODE: "FALSE"
      ENFORCE_SECURE_PROFILE: "FALSE"
      
      # 自动安装 Fabric 模组
      MODRINTH_PROJECTS: |
        lithium
        ferrite-core
        fabric-api
        spark

      MODRINTH_DOWNLOAD_DEPENDENCIES: "required"

    volumes:
      - ./data:/data

接着 docker compose up -d (1panel 里点保存即可),等待部署完成,恭喜你一个 mc fabric 模组服务器就部署好了,你可以用服务器 ip + 配置的端口 进行游戏了 (比如该配置里是 25565 端口),然后通过公网ip或者穿透的方式就可以让朋友加入你的游戏了