https://mjj.baota.sbs/xyzw.7z复制代码 我看里边是有教程的,发出来先劝退下 操作系统 ubuntu20 安装openresty1.19.3.1 apt-get install libpcre3-dev libssl-dev perl make build-essential curl wget https://openresty.org/download/openresty-1.19.3.1.tar.gz ./configure make make install 设置openresty执行目录到path中 1、新建或者编辑~/.bash_profile vi ~/.bash_profile 2、添加以下内容 PATH=/usr/local/openresty/bin:/usr/local/openresty/nginx/sbin:$PATH export LC_ALL=en_US.UTF-8 export PATH 3、保存文件后,执行 source ~/.bash_profile 将PATH修改掉 安装 skynet1.6 下载源码包:https://gitee.com/mirrors/skynet?_from=gitee_search apt-get install git autoconf 安装 go1.18 wget https://studygolang.com/dl/golang/go1.18.10.linux-amd64.tar.gz tar -C /usr/local -xvf go1.18.10.linux-amd64.tar.gz 安装docker apt-get install docker.io 安装mysql数据库 mkdir /data/mysqldb_dir //创建宿主机mysql数据目录 docker pull mysql:5.7.27 //拉取mysql镜像 docker run –name mysql -e MYSQL_ROOT_PASSWORD=admin123456! -v /data/mysqldb_dir:/var/lib/mysql -p ip:33061:3306 -d mysql:5.7.27 //创建docker容器 yourpassword是你自己的mysql的密码 10.148.0.10替换为服务器内网ip 安装redis数据库 mkdir -p /data/redisdb_dir /data/queuedb_dir //创建宿主机redis数据目录 docker pull redis:5.0 //拉取redis镜像 docker run –name redis -v /data/redisdb_dir:/data -p inner_ip:63791:6379 -d redis:5.0 –appendonly yes //创建docker容器 inner_ip替换为服务器内网ip docker run –name queue -v /data/queuedb_dir:/data -p inner_ip:63801:6379 -d redis:5.0 –appendonly yes //创建docker容器 inner_ip替换为服务器内网ip 安装mongo数据库 /data/mongodb_dir //创建宿主机mongo数据目录 docker pull mongo:4.0.10 //拉取redis镜像 docker run –name mongo -v /data/mongodb_dir:/data/db -p inner_ip:32787:27017 -d mongo:4.0.10 //创建docker容器 inner_ip替换为服务器内网ip 运行时需要注意的地方 1、从网上下载开源版本skynet,编译好后将skynet可执行文件复制到/data/proj/skynet下进行替换,可绕过key验证 2、如果需要定制引擎功能,要保证/data/proj/skynet/cservice/caoi.so不被覆盖 3、使用扩展方式开发C代码扩展引擎功能 上传服务器代码 mkdir /data/proj 上传config文件夹到/data/proj/下, 并修改prod.toml文件 上传apiserver文件夹到/data/proj/下, 并将depnginx.conf替换成nginx.conf 上传loginserver文件夹到/data/proj/下 上传gameserver文件夹到/data/proj/下 上传common文件夹到/data/proj/下 上传skynet文件夹到/data/proj/下 上传pyapi文件夹到/data/proj/下 配置信息修改(改成对应的ip和端口) /data/proj/common/settings.lua 1、更换mongodb数据库名 M.mongodb_tb = { game = “game”, — 将此处的game改成leshusanguo(二开可以自定义名称) } 2、更换ip,换成自己机器的公网ip — 暴露给客户端的连接信息 (外网IP) if M.debug then M.nodes[‘gameserver1’].host = “192.168.3.15” else M.nodes[‘gameserver1’].host = “you_ip” end /data/proj/common/setting/settings_template.lua 1、将ip换成内网或者外网ip(如果docker启动监听在内网则填写内网ip,外网则填写外网ip) 2、port换成对应的端口,比如mysql 3306换成33061,取决于docker启动时监听的端口号,可自定义 3、数据库相关的账户名和密码 /data/proj/config/prod.toml (生产环境),/data/proj/goserver/conf/dev.toml(测试环境) 1、同样将ip和端口号换成自己的 2、注意修改mysql的账户名密码 启动服务器 启动apiserver cd /data/proj/apiserver nginx -p `pwd` -c conf/nginx.conf //启动 nginx -p `pwd` -c conf/nginx.conf -s reload //重启 nginx -p `pwd` -c conf/nginx.conf -s stop //停止 启动gameserver cd /data/proj/skynet ./skynet ../loginserver/prodconfig //启动登录服务器 ./skynet ../gameserver/prodconfig //启动游戏服务器 kill -9 `cat loginskynet.pid` //停止登录服务器 kill -9 `cat gameskynet.pid` //停止游戏服务器 启动goserver cd /data/proj/goserver ./mygo //启动管理后台服务 启动pyapi(这个可暂时不用管,很简单,就是用来支付的) cd /data/proj/pyapi/kefu python main.py //启动客服服务 cd /data/proj/pyapi/wxpay sh start.sh //启动微信支付服务 复制代码
没有回复内容