找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 717|回复: 10

昨天帮吧友做了个 docker快速部署鱼头3.0的教程

[复制链接]

2677

主题

2万

回帖

7万

积分

出神入化

积分
79321
发表于 2025-5-30 19:01:19 | 显示全部楼层 |阅读模式
关闭防火墙
systemctl disable firewalld
systemctl stop firewalld
关闭 selinux
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
配置交换空间(若内存不足 8GB)
创建 Swap 文件
which /usr/bin/fallocate && /usr/bin/fallocate --length 8GiB /var/swap.1 || /bn/dd if=/dev/zero of=/var/swap.1 bs=1M count=8000
mkswap /var/swap.1
swapon /var/swap.1
sed -i '$a /var/swap.1 swap swap default 0 0' /etc/fstab
查看系统是否已启用 Swap
sysctl vm.swappiness
如果输出最后的数字不为 0,则代表已经启用 Swap,可不做处理。
如果输出最后的数字为 0,则使用下面的命令添加 Swap 配置(设定为比起内存,优先使用 Swap)
# 其中的 100 也可以进行修改,100 代表尽可能使用虚拟内存,0 代表尽可能使用物理内存
# 物理内存远快于虚拟内存,但对于 DNF 服务来说,个位数玩家在玩时,基本体会不到差异
sed -i '$a vm.swappiness = 100' /etc/sysctl.conf
重新启动服务器,或执行以下命令使 Swap 配置生效:
sysctl -p
云服务器开放所有协议和端口
使用的是数据库和服务分离版
拉取镜像
dnf数据库mysql镜像
docker pull xanderye/dnf-mysql:5.6
dnf服务server镜像
docker pull xanderye/dnf-server:centos7
# 创建一个dnf独立网桥,连通mysql和server两个容器
docker network create dnf --subnet 172.20.0.0/16
# 使用mysql5.6(数据不通用)
# ALLOW_IP为game账户ip白名单(dnf服务的ip)
# GAME_PASSWORD为game账户密码(密码必须8位 否则无法连接)
# MYSQL_ROOT_PASSWORD为mysql root密码,仅初始化有效
docker run -itd \
-p 3000:3306 \
-v /dnf/dnfmysql/mysql:/var/lib/mysql \
-e TZ=Asia/Shanghai \
-e ALLOW_IP=172.20.0.% \
-e GAME_PASSWORD=uu5\!^%jg \
# root账户密码
-e MYSQL_ROOT_PASSWORD=88888888 \
--name dnfmysql \
--network=dnf \
xanderye/dnf-mysql:5.6
# 查看日志 (首次启动需要等待几十秒,出现一大堆数据库配置列表才是启动完成)
docker logs dnfmysql
# 启动dnf服务
# AUTO_MYSQL_IP为自动获取内网下mysql容器的ip
# MYSQL_NAME为内网下mysql容器名称(主机名)
# MYSQL_IP为mysql的IP地址(公网使用,使用时需要关闭AUTO_MYSQL_IP)
# MYSQL_PORT为mysql的端口(公网使用,使用时需要关闭AUTO_MYSQL_IP)
# GAME_PASSWORD为game账户密码(密码必须8位 否则无法连接)
# AUTO_PUBLIC_IP为自动获取公网ip(小概率会失败,观察日志 get public ip 输出)
# PUBLIC_IP为公网IP地址,如果在局域网部署则用局域网IP地址,按实际需要替换
# DP2为dp2插件是否启用,默认禁用
# GM_ACCOUNT为登录器用户名,建议替换
# GM_PASSWORD为登录器密码,建议替换
docker run -d \
-e TZ=Asia/Shanghai \
-e AUTO_MYSQL_IP=true \
-e MYSQL_NAME=dnfmysql \
-e MYSQL_IP= \
-e MYSQL_PORT=3306 \
-e GAME_PASSWORD=uu5\!^%jg \
-e AUTO_PUBLIC_IP=false \
-e PUBLIC_IP=此处公网ip \
-e DP2=false \
-e GM_ACCOUNT=gm_user \
-e GM_PASSWORD=123456 \
-v /dnf/dnfserver/log:/home/neople/game/log \
-v /dnf/dnfserver/data:/data \
-p 7600:7600/tcp \
-p 881:881/tcp \
-p 20303:20303/tcp -p 20303:20303/udp \
-p 20403:20403/tcp -p 20403:20403/udp \
-p 40403:40403/tcp -p 40403:40403/udp \
-p 7000:7000/tcp -p 7000:7000/udp \
-p 7001:7001/tcp -p 7001:7001/udp \
-p 7200:7200/tcp -p 7200:7200/udp \
-p 10011:10011/tcp -p 31100:31100/tcp \
-p 30303:30303/tcp -p 30303:30303/udp \
-p 30403:30403/tcp -p 30403:30403/udp \
-p 10052:10052/tcp \
-p 20011:20011/tcp \
-p 20203:20203/tcp \
-p 20203:20203/udp \
-p 30703:30703/udp \
-p 11011:11011/udp \
-p 2311-2313:2311-2313/udp \
-p 30503:30503/udp \
-p 11052:11052/udp \
--cpus=1 --memory=1g --memory-swap=-1 --shm-size=8g \
--name dnfserver \
--network=dnf \
xanderye/dnf-server:centos7
去鱼头服务器里找到dp2 下载下来 把所有数据库端口3306 替换为3000
上传到/dnf/dnfserver/data/dp2
上传pvf
把公钥/dnf/dnfserver/data/publickey.pem拿出来  放客户端  用统一登录器生成登录器
重启docker 完事
回复

使用道具 举报

2737

主题

2万

回帖

8万

积分

出神入化

积分
80200
发表于 2025-5-30 19:02:17 | 显示全部楼层
技术贴
回复 支持 反对

使用道具 举报

2098

主题

1万

回帖

6万

积分

出神入化

积分
67279
发表于 2025-5-30 19:03:10 | 显示全部楼层
优秀

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复 支持 反对

使用道具 举报

2740

主题

2万

回帖

7万

积分

出神入化

积分
79756
发表于 2025-5-30 19:03:39 | 显示全部楼层
牛哇
回复 支持 反对

使用道具 举报

2000

主题

1万

回帖

6万

积分

出神入化

积分
66032
发表于 2025-5-30 19:03:51 | 显示全部楼层
厉害了!
回复 支持 反对

使用道具 举报

2000

主题

1万

回帖

6万

积分

出神入化

积分
66032
发表于 2025-5-30 19:04:31 | 显示全部楼层
不过大佬,有个问题,用统一登录器能激活dp插件嘛?我之前搭建过,dp貌似是不生效的。
回复 支持 反对

使用道具 举报

2098

主题

1万

回帖

6万

积分

出神入化

积分
67279
发表于 2025-5-30 19:05:25 | 显示全部楼层
请问鱼头的服务端我用虚拟机打开就弹出这个是什么原因

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复 支持 反对

使用道具 举报

2000

主题

1万

回帖

6万

积分

出神入化

积分
66032
发表于 2025-5-30 19:06:23 | 显示全部楼层
@包包大i人
回复 支持 反对

使用道具 举报

2098

主题

1万

回帖

6万

积分

出神入化

积分
67279
发表于 2025-5-30 19:06:49 | 显示全部楼层
请问下用了docker是不是就不需要虚拟机啦?
回复 支持 反对

使用道具 举报

2098

主题

1万

回帖

6万

积分

出神入化

积分
67279
发表于 2025-5-30 19:07:47 | 显示全部楼层
鱼头3.0按照使用说明都做了,之后用客户端的登录器点登录就变成这样了,这是为啥?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复 支持 反对

使用道具 举报

2677

主题

2万

回帖

7万

积分

出神入化

积分
79321
 楼主| 发表于 2025-5-30 19:07:55 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表