效果
注册
windows启动一个centerOS服务器作为服务端,有现成服务器的忽略这一步。
CenterOS下载地址
https://app.vagrantup.com/centos/boxes/7
windows中启动一个CenterOS虚拟机
虚拟机有线连接并ifconfig
查看ip
前置操作(使用CenterOS服务器)
先升级yum源
下载docker安装脚本
1
| curl -fsSL https://get.docker.com -o get-docker.sh
|
运行安装docker的脚本
启动docker
1 2
| systemctl enable docker systemctl restart docker
|
关闭防火墙
1 2
| systemctl disable firewalld systemctl stop firewalld
|
关闭selinux
1
| sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
|
创建swap(如果内存足够可以直接忽略)
1 2 3 4
| /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
|
查看操作系统是否打开swap的使用(如果内存足够可以直接忽略)
1 2 3 4
| sudo vim /etc/sysctl.conf
# 将vm.swappiness的值修改为100(优先使用swap),没有该配置就加上 vm.swappiness = 100
|
最后执行以下命令使配置生效:
部署服务
拉取镜像(根据你的CenterOS版本拉取对应镜像)
1 2 3 4 5 6 7 8
| docker pull 1995chen/dnf:centos5-2.1.4.fix1 docker pull 1995chen/dnf:centos6-2.1.4.fix1
docker pull 1995chen/dnf:centos7-2.1.4.fix1
docker pull registry.cn-hangzhou.aliyuncs.com/1995chen/dnf:centos7-2.1.4.fix1 && docker tag registry.cn-hangzhou.aliyuncs.com/1995chen/dnf:centos7-2.1.4.fix1 1995chen/dnf:centos7-2.1.4.fix1
https://hub.docker.com/repository/docker/1995chen/dnf
|
开始拉取
拉取成功
启动服务(里面的参数必须要修改!!!注意启动参数里面的centeros版本)
注意最后的centeros7、6、5要和上面拉取的镜像对应!
1 2 3 4 5 6 7 8 9 10 11 12
| mkdir -p /data/log /data/mysql /data/data
docker run -d -e PUBLIC_IP=x.x.x.x -e WEB_USER=root -e WEB_PASS=123456 -e DNF_DB_ROOT_PASSWORD=88888888 -e GM_ACCOUNT=gmuser -e GM_PASSWORD=gmpass -v /data/log:/home/neople/game/log -v /data/mysql:/var/lib/mysql -v /data/data:/data -p 2000:180 -p 3000:3306/tcp -p 7600:7600/tcp -p 881:881/tcp -p 7001:7001/tcp -p 7001:7001/udp -p 10011:10011/tcp -p 11011:11011/udp -p 10052:10052/tcp -p 11052:11052/udp -p 7200:7200/tcp -p 7200:7200/udp -p 2311-2313:2311-2313/udp --cap-add=NET_ADMIN --hostname=dnf --cpus=1 --memory=1g --memory-swap=-1 --shm-size=8g --name=dnf 1995chen/dnf:centos7-2.1.4.fix1
|
有时候可能启动不成功
可以restart一下
或者用docker-compose
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| services:
dnf: hostname: dnf image: 1995chen/dnf:centos5-2.1.4.fix1 # privileged: true cap_add: - NET_ADMIN environment: - TZ=Asia/Shanghai # 数据库root密码 - DNF_DB_ROOT_PASSWORD=88888888 - GM_ACCOUNT=gmuser - GM_PASSWORD=gmpass - GM_CONNECT_KEY=763WXRBW3PFTC3IXPFWH - GM_LANDER_VERSION=20180307 # 手动指定对外IP - PUBLIC_IP=127.0.0.1 # Netbird[可选配置][没有公网IP的可选私有内网接入] #- NB_SETUP_KEY='' #- NB_MANAGEMENT_URL='' # 开启DDNS[可选配置] # - DDNS_ENABLE=true # - DDNS_DOMAIN='' # shm_size: 8g【不可删除】,docker默认为64M较小,需要增加才能保证运行 shm_size: 8g memswap_limit: -1 mem_limit: 1g cpu_count: 1 restart: always ports: - 2000:180/tcp # supervisor web - 3000:3306/tcp # mysql - 7600:7600/tcp # 统一登陆器 - 881:881/tcp # 统一网关 - 7001:7001/tcp # df_channel_r - 7001:7001/udp # df_channel_r - 7200:7200/tcp # df_relay_r - 7200:7200/udp # df_relay_r - 10011:10011/tcp # df_game_r[ch.11] - 11011:11011/udp # df_game_r[ch.11] - 10052:10052/tcp # df_game_r[ch.52] - 11052:11052/udp # df_game_r[ch.52] - 2311-2313:2311-2313/udp # df_stun_r volumes: - ./data:/data - ./mysql:/var/lib/mysql - ./log:/home/neople/game/log
|
等待几分钟启动
访问你部署的ip:2000查看进程管理页面,出现如下页面说明你的程序启动成功了
如果是云服务器需要开放对应端口
添加本地host
下载客户端、网关和补丁
链接:https://pan.baidu.com/s/1OXWplfbkSXv3IyLFJhVtVA
提取码:6666
生成登陆器
配置网关
运行
下面红色字体就是上面docker执行运行命令中配置的内容,通信密钥固定为763WXRBW3PFTC3IXPFWH
生成登陆器
里面的ip是你虚拟器服务端的ip地址,注意游戏版本必须和网关中的一致
将登录器拷贝到游戏的目录下
双击登陆器运行