情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

2025-12-25 21:21:44 45点赞 346收藏 39评论

前言

这几天陆续有朋友留言让我继续发点游戏的部署教程,由于到了年终,手上事情确实也多,不过既然大家喜欢,那怎么也得安排一下,今天来个冒险岛服务器,叫上当年的兄弟再刷一次扎昆!

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

项目介绍

本项目基于Cosmic来的汉化和优化,Cosmic 是一款针对全球枫之谷(GMS)83版本的服务器模拟器。于2021年3月上线。它基于长达十多年的服务器模拟器代码,这些模拟器从OdinMS(2008年)一直延续到HeavenMS(2019年)。这是一个以Java为主导的项目,但也包含大量用JavaScript编写的脚本。

本项目地址:https://github.com/BeiDouMS/BeiDou-Server 服务端docker仓库地址:https://github.com/BeiDouMS/BeiDou-docker 原始项目地址:https://github.com/P0nk/Cosmic 情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

部署准备

新建存储目录

安装之前需先在docker文件夹中新建一个mxd文件夹,用于配置持久化保存,后面所有相关文件都存在这里。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

准备Compose文件

打开飞牛os的docker--compose--新增项目--项目名称(填mxd,可识别即可),l路径选择上面建立好的文件夹“mxd”,选择创建docker-compose.yml,然后将下面代码复制粘贴到代码框,为了便于大家理解,我给每段代码加了注释,最后勾上创建项目后立即启动,点击创建即可:

version: '3.4' # 指定docker-compose语法版本(适配v3.4+) services: beidou-server-all: # 北斗服务器主服务(集成所有功能) container_name: beidou-server-all # 容器自定义名称,便于管理 image: ghcr.io/beidoums/beidou-server-all:v1.9 # 北斗服务器镜像(v1.9版本) environment: TZ: Asia/Shanghai # 设置容器时区为上海,避免时间偏差 ports: - "8686:8686" # Web管理界面端口映射 - "8484:8484" # 登录服务器端口映射 - "7575-7577:7575-7577" # 业务通道端口段映射(3个连续端口) volumes: - ./beidou-server-release:/opt/server # 挂载服务器配置/数据目录到容器 command: # 启动参数:覆盖数据库连接和服务地址配置 - --mybatis-flex.datasource.mysql.url=jdbc:mysql://beidou-db:3306/beidou?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai # MySQL数据库连接地址 - --mybatis-flex.datasource.mysql.username=root # MySQL登录用户名 - --mybatis-flex.datasource.mysql.password=root # MySQL登录密码 - --gms.service.wan-host=127.0.0.1 # 服务公网访问地址 - --gms.service.lan-host=127.0.0.1 # 服务局域网访问地址 - --gms.service.localhost=127.0.0.1 # 服务本地回环地址 # healthcheck: # 健康检查(注释禁用,启用可取消注释) # test: ["CMD", "wget", "--spider", "http://localhost:8686/"] # 检测8686端口存活状态 # interval: 10s # 检查间隔10秒 # timeout: 5s # 单次检查超时5秒 # retries: 10 # 重试10次仍失败则标记不健康 depends_on: # 依赖关系:等待数据库服务健康后启动 beidou-db: condition: service_healthy # 依赖条件:beidou-db服务健康 networks: - beidou-network # 加入自定义桥接网络 beidou-db: # MySQL数据库服务(北斗服务器依赖) container_name: beidou-db # 数据库容器名称 image: mysql:8.4.0 # MySQL镜像版本(8.4.0) environment: MYSQL_ROOT_PASSWORD: "root" # MySQL root用户默认密码 ports: - "3306:3306" # MySQL端口映射(宿主机:容器) volumes: - ./docker-db-data:/var/lib/mysql # 持久化MySQL数据到宿主机目录 healthcheck: # 数据库健康检查 test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-uroot", "-proot"] # 检测MySQL服务可用性 interval: 10s # 检查间隔10秒 timeout: 5s # 单次检查超时5秒 retries: 10 # 重试10次 start_period: 10s # 启动后等待10秒再开始检查 networks: - beidou-network # 加入自定义桥接网络 networks: beidou-network: # 自定义桥接网络(让两个服务互通) driver: bridge # 网络驱动:桥接模式

需要注意的是:如果代码不可用,让ai修改一下格式。如果端口有冲突,可以修改本地端口。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

当然,如果害怕代码出错,可以直接在网页上下载作者准备好的yml文件,下来下来后放入前面创建的文件夹。然后在docker--compose--新建项目,填好项目名称和路径,选择导入docker-compose文件就行,会自动识别yml文件并导入代码。下载地址:https://github.com/BeiDouMS/BeiDou-docker/tree/master

如果怕麻烦或者网络原因无法下载的,也可以看我上一篇文章

点击创建,项目就创建成功了,看到项目正在运行就说明服务端部署成功了。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

服务端配置

输入nasip+端口,比我我这里就是192.168.1.45:8686,进入服务端管理页面,默认填充好了账号密码,直接进入。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

在工作台可以看到运行状态啥的。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

游戏管理可以进行商城、NPC设置、怪物爆率、背包管理、百宝箱管理等各种设置。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

玩家管理可以进行账户创建、封存等操作。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

客户端配置

到项目发布网址下载客户端 https://github.com/BeiDouMS/BeiDou-Server/releases,如果因为网络原因无法下载,可以使用fastgithub解决。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

下载并解压文件。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

进入文件夹,找到config.ini文件。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

打开并修改其中的服务器地址为部署机器的地址,保存退出。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

体验游戏

双击beidou.exe启动游戏。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

输入账号 admin,密码 admin,就可以开始游戏了。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

也可以在后台服务端新建账户,给兄弟玩儿。

情怀拉满!飞牛NAS+Docker部署冒险岛,手把手教你找回童年

关于内网穿透,异地组网,具备条件的朋友可以试试域名能不能用,不行的话可以使用节点小宝极空间里的节点小宝:无公网IP也能内网穿透,远程访问NAS!、或者星空组网一类的组网软件,大家玩儿才是真的玩儿。

(我把文中的yml文件和客户端都放网盘了,有需要的可以公众号回复“冒险岛”直接下载)

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
39评论

  • 精彩
  • 最新
  • 我在群晖里部署,因为masql群晖有自带的服务使用了3306这个端口 ,而服务器8484也映射到了8383上面,然后masql数据库的端口3306也映射到了3308,部署拉取后也正常运行,可以打开后台管理,但是ip加8383这个服务器地址无法访问 这是为什么

    校验提示文案

    提交
  • [哭泣] 我在家开的nas,用节点小宝异地组网,能进入到登录界面,选人就卡住。后来研究了一下,要开启节点小宝的[自定义组网]-[全网映射]。然后就可以成功进游戏开始玩了。我分析是端口的原因,8484的链接口和7575-7577的频道口不知道咋整。反正全网映射过来就好 [ok了] [ok了] [ok了] [ok了]

    校验提示文案

    提交
  • 弄个私服,大家一起玩,才有意思

    校验提示文案

    提交
    那得去吃免费饭了

    校验提示文案

    提交
    收起所有回复
  • 部署并不难,难的是找回当年的人和玩游戏的乐趣。 [皱眉]

    校验提示文案

    提交
    是的

    校验提示文案

    提交
    收起所有回复
  • 客户端能给个网盘链接吗

    校验提示文案

    提交
    我放网盘了啊,公众号回复"冒险岛"就行

    校验提示文案

    提交
    打开客户端提示error code -2147467259(未指定错误),这个怎么解决

    校验提示文案

    提交
    收起所有回复
  • 创建完人物,进入游戏就会连不上服务器,这个是我哪里没弄好吗

    校验提示文案

    提交
    yml 里面把ip改成本机ip

    校验提示文案

    提交
    它有三个ip都是127.0.0.1,我都尝试改成nas的ip了,还是不行 [皱眉]

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 有群晖版的吗

    校验提示文案

    提交
    docker都可以的,群晖也有docker啊

    校验提示文案

    提交
    出现了错误,
    Bind mount failed: /volume1/docker/mxd/docker-db-datal does not exist

    校验提示文案

    提交
    还有5条回复
    收起所有回复
  • 按好了 但是不支持手柄😮‍💨

    校验提示文案

    提交
    我刚刚买了手柄还没到

    校验提示文案

    提交
    反正我看里面没有手柄设置 正版是有的以前一直用手柄玩

    校验提示文案

    提交
    收起所有回复
  • 这个教程超级棒,还有没有其他游戏docker搭建教程

    校验提示文案

    提交
    有的,哥,有很多

    校验提示文案

    提交
    已关注,期待你的文章。我之前只找到了dosgame的项目,其他经典网游都没找到。顺带说一下这个冒险岛项目还不太完整,体验两周发现存在任务翻译不全,部分任务无法完成(如多个宠物任务),部分任务接取后在任务栏无法找到,部分任务描述中的获得道具与实际不符问题,要是有完美端,版本低点也能接受

    校验提示文案

    提交
    收起所有回复
  • 公众号是啥

    校验提示文案

    提交
  • 大家有没有遇到打开运行端 提示errot code -2147467259(未指定错误)

    校验提示文案

    提交
  • 想起当年约好朋友或网友一起去打扎头,可惜一直没拿到 [喜极而泣]

    校验提示文案

    提交
  • 马克一下得空折腾一下

    校验提示文案

    提交
  • 插个眼,有空弄我绿联上 [惊喜]

    校验提示文案

    提交
  • 这个不错,不过我家是铁威马的nas,也能玩

    校验提示文案

    提交
  • 跳了一个通宵的扎2 [皱眉] [皱眉] [皱眉]

    校验提示文案

    提交
  • 客户端404了?

    校验提示文案

    提交
  • 好东西,一会部署了玩玩

    校验提示文案

    提交
  • 搞个云服务器和两个朋友一起玩不会被逮吧

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
346
扫一下,分享更方便,购买更轻松