zoukankan      html  css  js  c++  java
  • docker下编译mangoszero WOW60级服务端(一)

    这几天看到暴雪准备开放怀旧服的新闻,突然想到几年前用大芒果window一键服务端自己搭建过服务,就想着在Linux环境下重新编译一套,毕竟Linux作为服务端,性能和稳定性都会高一些,于是在mac虚拟机中安了个centos7,按照官方文档搞了一套。

    虚拟中搭建完成之后,想着不如在docker中做几个镜像,到时一键启动就可以搭建完成一套服务端,多么轻松。

    经过几天的努力,完成了60级镜像和70级镜像的制作,由于镜像有些大,目前只把60级镜像推送到了阿里云,有兴趣的朋友可以pull下来玩玩,当然客户端需要自己准备了,下面给出镜像地址和操作说明,后面再针对此次搭建过程作一些记录。

    60级验证服务器镜像:https://dev.aliyun.com/detail.html?spm=5176.1972343.2.2.otKSdx&repoId=86540

    60级世界服务器镜像:https://dev.aliyun.com/detail.html?spm=5176.1972343.2.6.otKSdx&repoId=86588

    60级数据库镜像:https://dev.aliyun.com/detail.html?spm=5176.1972343.2.18.otKSdx&repoId=86688

    说明:

    1.拉取镜像。

    2.编写docker-compose.yml

    version: "2"
    services:
      wow60-database:
        image: registry.cn-shenzhen.aliyuncs.com/olivercj/wow60-database:0.1
        container_name: wow60-database
        command:
        - /run.sh
        ports:
        - 3306:3306/tcp
        networks:
        - wow60-net
      wow60-realmd:
        image: registry.cn-shenzhen.aliyuncs.com/olivercj/wow60-realmd:0.2
        command:
        - /data/run.sh
        ports:
        - 3724:3724/tcp
        depends_on:
        - wow60-database
        networks:
        - wow60-net
      wow60-world-0:
        image: registry.cn-shenzhen.aliyuncs.com/olivercj/wow60-world:0.2
        command:
        - /data/run.sh
        ports:
        - 8085:8085/tcp
        depends_on:
        - wow60-realmd
        networks:
        - wow60-net
    
    networks:
        wow60-net:
            external: true

    3.创建网络

    docker network create wow60-net

    4.启动

    docker-compose -f docker-composer.yml up -d

    5.完成

    6.注意

    1).wow60-world容器中的世界服务很大几率自动启动失败,需要手动启动

    启动: nohup /data/mangos/bin/mangosd -c /data/mangos/etc/mangosd.conf >/data/nohup.log 2>&1 &
    
    关闭:/data/mangos/bin/mangosd -s stop

    2).wow60-database镜像建议依赖此镜像再重新build一个镜像,避免数据丢失

    3).如果想要搭建多个世界服务器,我将在后面搭建过程中进行说明。

    4).验证服务器一般情况一台就够了,可以支持多个世界服务

    5).镜像基于centos制作,可启动容器后,登入容器进行操作

    docker exec -it container_name /bin/bash

    6).如果对镜像有修改,可保存修改

    docker commit container_name image_name:image_version

     

    客户端说明:

    1. 60级客户端下载地址:http://www.nfuwow.com/Simple/detail/artid/75.html,基本上1.12.1的客户端都通用,建议下载中文纯净版

    2. 修改realmlist.wtf,如果是本机docker,则直接改成

    Set realmlist 127.0.0.1

    3. 删除WTF文件夹

    4.点击WOW.EXE进入游戏

    汉化说明:

    1.汉化数据库:https://github.com/keyshuwen/wow_db_chinese/tree/DB-Zero(1.12.3)

    2.启动容器后,用数据库管理软件进入容器数据库,默认账号信息如下:

    host:127.0.0.1
    port:3306
    username:root
    password:123456

    3.按照汉化数据库SQL手动导入,建议导入之前检查一下或者做一下数据备份

    4.后面我会提交一份汉化后的数据库镜像

    5.数据库更新完成后,需要删除客户端cache/WDB文件夹,重新进入游戏即可

  • 相关阅读:
    Java学习之路(四)
    HTML学习之canves元素
    一些常用的SQL查询语句
    数据库实现动态表头
    Java学习之路(三)
    Java学习之路(二)
    Java学习之路(一)
    UML类图几种关系的总结(转)
    vue 项目全局修改element-ui的样式
    NGINX 资料
  • 原文地址:https://www.cnblogs.com/oliverCJ/p/7832963.html
Copyright © 2011-2022 走看看