本期来介绍个项目,Docker一键搭建DNF快乐服(私服)。
这次折腾的目标也很明确:不用复杂环境、不手动编译、不写一堆脚本,通过 Docker 一键把 DNF 私服跑起来,能偶尔跟小伙伴凑一起玩玩。
要说起DNF,笔者可以说是老吃家了~虽然因为种种原因弃坑好多年,但满满全是回忆。话都到这了,请先让我回忆一波!!!放两三张图~不知道有没有跨八的朋友见过咱~



项目介绍
完整项目名:1995chen/dnf,可于GitHub搜索。
该项目是将地下城与勇士(毒奶粉、DNF、DOF)整合成一个 Docker 镜像的项目,本项目使用官方 CentOS-5/6/7为基础镜像,通过增加环境变量以及初始化脚本实现 应用的快速部署。
项目不太吃CPU,内存高一点点(也有限,2G~4G随便玩)。
本镜像目前是85版本,安图恩团本之前的过渡期,如果想换版本可后期自行更换pvf文件。
项目更新速度还可以的,感兴趣的朋友可以持续关注。
注意⚠️:项目虽然支持外网,但是千万别拿来开服。只能拿来学习使用!!!
部署流程
本文以威联通NAS为例,通过Docker Compose的方式进行部署,直接展示外网,切换内网自行替换IP即可。如果要重新部署,请将数据库等文件先清理完毕。
部署代码如下,我的建议是除了IP部分,先按照原版默认配置跑一遍能确定成功后,再删掉数据库文件编辑信息重新部署:
services:
dnf:
image: 1995chen/dnf:centos7-latest # 个人建议这版
container_name: dnf
hostname: dnf
cap_add:
- NET_ADMIN
environment:
- PUBLIC_IP=xxx.xxx.xxx.xxx # 替换成你的IP
- WEB_USER=root # 自定义
- WEB_PASS=123456 # 自定义
- DNF_DB_ROOT_PASSWORD=88888888 # 自定义,但要与下面对应
- GM_ACCOUNT=gmuser # 自定义
- GM_PASSWORD=gmpass # 自定义
- CLIENT_POOL_SIZE=10
ports:
- "180:180" # supervisor web
- "3306:3306" # mysql
- "7600:7600" # 统一登陆器
- "881:881" # 统一网关
- "7001:7001" # df_channel_r
- "7001:7001/udp" # df_channel_r
- "30011:30011" # df_game_r[ch.11]
- "31011:31011/udp" # df_game_r[ch.11]
- "30052:30052" # df_game_r[ch.52]
- "31052:31052/udp" # df_game_r[ch.52]
- "7300:7300" # df_relay_r
- "7300:7300/udp" # df_relay_r
- "2311-2313:2311-2313/udp" # df_stun_r
volumes:
- /share/Container/dnf/log:/home/neople/game/log
- /share/Container/dnf/mysql:/var/lib/mysql
- /share/Container/dnf/data:/data
shm_size: 8g
restart: always
打开威联通的Container Station,创建新的应用程序。

启用前的配置
首先到路由管理中映射以下几个端口,确保外面能连接到。这些端口包含了大区、频道,更多频道请参照文档在上文yaml部署代码自行添加。

接着,到项目主页下载这三个压缩包。

将他们全部解压。

首先是「DO补丁大合集V7.6」文件夹,其中有三个文件。打开后将其中的DNF.toml文件进行编辑,将IP地址更换为上文PUBLIC_IP一致。建议不要用记事本直接打开编辑,推荐使用VScode。

接着将三个文件,直接复制到「地下城与勇士」文件夹中,有重复文件就选择直接替换。

接着打开「统一网管在线管理工具」文件夹,双击运行统一网关在线管理工具v6.4.exe。这也算是半个GM工具,发装备(增幅/强化),发材料啥的都能操作,大家部署完了可以自己用用看。

首先如下图,点击「网关设置」。网关地址与PUBLIC_IP一致,网关端口881,登陆账号密码与部署时的一致,通信密钥763WXRBW3PFTC3IXPFWH,登录器端口7600。填写完毕后,点击网关端口右侧的连接,不出问题的话就会连上,接着再点击底部的「参数设置内容立刻生效」。如果连不上,请检查参数是否有误。

如下图。然后顶部栏再点击「登陆器设置」。服务器名称自定义,登陆器版本 20180307。
接着继续填写:线路名自定义,登录器端口7600,游戏地址、网关地址与PUBLIC_IP一致。这四个填写完后点击右侧的「添加」。
添加完毕后,填入通信密钥763WXRBW3PFTC3IXPFWH,接着再点击「生成登陆器」。

生成完毕后,会弹出登录器已生成界面。此时我们再关掉统一网关在线管理工具v6.4.exe这个进程,可以看到又多出来一个Config.ini配置文件。将「统一网管在线管理工具」文件夹中新生成的这两个文件也放入「地下城与勇士」文件夹中。也是有重复就直接替换。

至此,所有工作完成,可以开始玩了。
游玩体验
打开登录器,先注册账户。随便填一填就行。

创建完毕后登录。

进入频道。

创建角色。


新手教程。

捣鼓了一会儿,站街图。

最后
想要回味的朋友可以部署个玩玩。
感谢观看,本文完~
评论区