DNF架设史上的颠覆
1.首先准备一台Linux机器,最好是服务器,因为服务器IP不会变,如果会从路由器设置电脑的固定IP,那也就无所谓了,服务器的优势主要就是大家不在一起也能一起玩游戏2.这里我准备的是Centos 7,因为要安装docker,Centos 6以下的版本要升级内核,太麻烦了,所以我们选择Centos 7以上,Ubuntu系统可以选择16.04以上都是可以的,只要能成功安装docker,对了我选的是64位,大家最好都64位吧
3.服务器配置 1核2G1M带宽,很便宜的配置了,我在淘宝买的,注册一个新的腾讯云账号,淘宝买只要66一年,大家自行研究
4.安装docker,运行以下命令
先升级yum源
yum update -y
下载docker安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
运行安装docker的脚本
sudo sh get-docker.sh
启动docker
systemctl enable docker
systemctl start docker
5.关闭防火墙
systemctl disable firewalld
systemctl stop firewalld
systemctl disable firewalld.service
systemctl stop firewalld.service
6.关闭selinux
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
这个是关闭selinux的详细文档
https://jingyan.baidu.com/article/7e4409537177d32fc0e2efe9.html
最好永久关闭吧,然后重启服务器
7.创建swap
/bin/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
8.判断docker是否安装成功
docker ps
出现以下结果就是成功了
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9.拉取镜像
docker pull 1995chen/dnf:85.1
10.启动
在根下创建一个文件夹
mkdir -p /data
启动
docker run -d -e IP=你的外网IP -v /data/root:/root -v /data/neople:/home/neople --net=host --privileged=true --memory=8g --oom-kill-disable --shm-size=8g 1995chen/dnf:85.1
11.判断是否出现5国
cd/data/neople/game/log/siroco11/
然后里面会有类似Log20201103.init的文件,我写这个帖子的时候刚好是11月03,所以大家自己对号入座
tail -f Log20201103.init
会出现下面结果
- GuildLevelUp : 0
- GuildSkillUp : 0
- GuildBreak : 0
- CreateCharacter : 0
- LoginChannel : 0
Mobile Auth End
[!] Service Restrict List ...
Security Restrict Begin
- RestrictBegin : 1
- DropRate : 0
Security Restrict End
GeoIP Allow Country Code : CN
GeoIP Allow Country Code : HK
GeoIP Allow Country Code : KR
GeoIP Allow Country Code : MO
GeoIP Allow Country Code : TW
[!] Connect To Monitor Server ...
[!] Connect To Guild Server ...
说明成功了
12.判断进程是否存在
ps -ef |grep df_
会出现下面结果
# ps -ef |grep df_
root 12024 119180 11:37 ? 00:00:01 ./df_stun_r start
root 12089 119180 11:37 ? 00:01:12 ./df_community_r community start
root 12090 11918 36 11:37 ? 01:57:47 ./df_coserver_r coserver start
root 12091 119183 11:37 ? 00:10:42 ./df_statics_r stat_siroco start
root 12092 119180 11:37 ? 00:00:01 ./df_relay_r relay_200 start
root 12104 119186 11:37 ? 00:21:25 ./df_dbmw_r dbmw_mnt_siroco start
root 12105 119186 11:37 ? 00:21:24 ./df_dbmw_r dbmw_gld_siroco start
root 12106 119186 11:37 ? 00:21:25 ./df_manager_r manager start
root 12107 119183 11:37 ? 00:10:44 ./df_dbmw_r dbmw_stat_siroco start
root 12108 119186 11:37 ? 00:21:25 ./df_monitor_r mnt_siroco start
root 12109 119183 11:37 ? 00:10:49 ./df_channel_r channel start
root 12110 119186 11:37 ? 00:21:25 ./df_guild_r gld_siroco start
root 12111 119183 11:37 ? 00:11:27 ./df_bridge_r bridge start
root 12183 119346 11:38 ? 00:22:04 ./df_game_r siroco11 start
root 12212 119346 11:38 ? 00:22:03 ./df_game_r siroco52 start
root 30721 278990 16:57 pts/0 00:00:00 grep --color=auto df_
有df_game_r代表没毛病,老铁可以连接客户端登录了
13.服务挂了怎么启动
这个简单,先运行docker ps -a查看docker容器的id
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f37360fd1c76 1995chen/dnf:85.1 "/bin/bash /docker-e…" 6 hours ago Up 5 hours suspicious_spence
#
在这里f37360fd1c76就是容器的id,我们只需要运行
docker restart f37360fd1c76就可以了
14.电脑IP变了怎么办
这真是个伤心的事,因为如果你需要连接mysql,把d_taiwan数据库下的db_connect 表里的db_ip字段全部改成正确的ip才行,但这个肯定是不够的,你还需要运行下面命令
sed -i "s/你上次指定的IP/你这次的IP/g" `find /data/neople -type f -name "*.cfg"`
sed -i "s/你上次指定的IP/你这次的IP/g" `find /data/neople -type f -name "*.tbl"`
很难受吧,所以大家路由器啥的配置好,IP最好不要变。
15.我是Windows电脑怎么办
真的很抱歉,docker在windows下不能开启宿主机网络host模式,浪费了很多时间看这个文档,话说我为啥不把这个放在最前面,,,,windows还是用虚拟机吧,那也更快,更方便。祝大家游戏愉快
16.别问我为啥还有第16条
我们用的网关是DnfGateServer,没错,就是大家最常用的那款登录器。主要是用那个统一网关管理器生成登录器。配置都在/data下的root目录里,里面有Config.ini有网关的所有配置。如果是在不会这个就不要找我啦,因为真的比较复杂,前人积累的东西太多,不是一天两天能讲完的,是在不行就私信我吧,我直接发你们一个客户端,和我一起玩吧,买一个服务器就架设这个服务,整个区没人,我也希望有更多的人在里面完,PK!去实现那些曾经未曾做的事。
17.后续会放出客户端的地址供大家下载 看到你说了统一,是的配置确实都在root里面。只需要配置好一次,配置文件导出来,然后在run脚本集成启动命令就可以做到。run的时候开登录器网关。stop关网关顺便关服。 统一登录器
链接: 网页链接 提取码: u86h 复制这段内容后打开百度网盘手机App,操作更方便哦 1nJY3BP5BkBPTuwbvgIBv_A
提取码: he2s 老牛客户端
1roOxDI4tyfBvvcUQTjCimA 提取码: bwcy 亲测可用,什么系统都可以run了。。。但是如果不太懂服务器什么的,还是不要折腾了, 更换版本稍麻烦一点 整挺好!
换了个pvf,正在跑,不知道怎么样 mysql的端口大佬会改吗 我不会,我只会架设 之前也是自己用docker做一直提示core dump 后面看了楼主的run参数后受到启发 之前自己做的镜像也能成功在docker下跑出5国了 没听懂啥意思 秀啊 仔细看了下,容器启动时没有指定端口映射,这样服务压根就没办法被访问到啊 按照步骤走 关了防火墙
docker 里面 一直卡在
CONNECTION FAIL IP =127.0.0.1, PORT =40403, reason =Connection refusedtcpSoc
页:
[1]