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 >& & 关闭:/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:
username:root
password:
3.按照汉化数据库SQL手动导入,建议导入之前检查一下或者做一下数据备份
4.后面我会提交一份汉化后的数据库镜像
5.数据库更新完成后,需要删除客户端cache/WDB文件夹,重新进入游戏即可
docker下编译mangoszero WOW60级服务端(一)的更多相关文章
- docker下编译mangoszero WOW60级服务端(二)
开始搭建基于docker的mangoszero WOW服务端,我自己的操作系统是mac os,其他平台操作可以等价替换 1.准备工作 (1) 安装docker,参考docker官方文档,https:/ ...
- docker下编译mangoszero WOW60级服务端(三)
开始构建WOW服务端通用镜像 第二篇文章中准备工作环节已经从github拉取了mangosd源代码,这里我们就可以直接开始编写dockerfile并进行编译 (1) 进入mangos/wow60/ma ...
- [UE4]如何编译部署独立专用服务端(Standalone Dedicated Server)
这是论坛上对UE服务端功能的回答,意思是UE4提供了网游服务端所具备的特性,包括位移修正.物理碰撞检测.这些特性不是UE4才加入,早期UE版本就有了. https://answers.unrealen ...
- Centos下使用gitosis配置管理git服务端(转载)
From:http://www.cnblogs.com/ahauzyy/archive/2013/04/08/3043384.html 说明:由于条件有限,我这里使用的是同一台centos的,但教程内 ...
- TCP下的套接字服务端实现并发 作业题
# 服务端 import socket from threading import Thread """ 服务端 1.要有固定的IP和PORT 2.24小时不间断提供服务 ...
- 【修改端口号】linux下修改apache,nginx服务端口号
一.linux下修改apache端口号 yum安装后,apache配置文件: /etc/httpd/conf/httpd.conf 找到apache目录下的 httpd.conf, 使用vi 打开,找 ...
- linux下修改apache,nginx服务端口号
一.linux下修改apache端口号 yum安装后,apache配置文件: /etc/httpd/conf/httpd.conf 找到apache目录下的 httpd.conf, 使用vi 打开,找 ...
- ubuntu 14.04 下 安装samba 及SSH 服务端的方法
之前说了 FTP服务器的搭建:http://www.cnblogs.com/bcsflilong/p/4200139.html 今天说一下samba 和ssh服务器的搭建. 先说samba 吧. 在u ...
- ubuntu下编译源码级QT
注意必须好好看官方文档: http://qt-project.org/doc/qt-5/linux.html 包括编译Qt库依赖的包等等. 编译过程中发现以下错误: All the OpenGL fu ...
随机推荐
- docker命令不需要敲sudo的方法
由于docker daemon需要绑定到主机的Unix socket而不是普通的TCP端口,而Unix socket的属主为root用户,所以其他用户只有在命令前添加sudo选项才能执行相关操作. 如 ...
- Elixir游戏服设计六
接上章,我新建了个app做包含Table模型, TableServer等.Table桌子的代码暂时如下, 有一些状态还没用上 defmodule Table do @state_accept 0 #准 ...
- jQuery中下拉select、复选checkbox、单选radio的操作代码
//select $("#Icon") //对象 $("#Icon").val() //取值 $("#Icon").val("fa ...
- Django 1.10中文文档-聚合
Django 数据库抽象API 描述了使用Django 查询来增删查改单个对象的方法. 然而,有时候你要获取的值需要根据一组对象聚合后才能得到. 这个主题指南描述了如何使用Django的查询来生成和返 ...
- 项目常见函数封装,基于Jquery
/// <reference path="jquery-1.8.0.min.js" /> /* * DIV或元素居中 * @return */ jQuery.fn.mC ...
- web基础系列(五)---https是如何实现安全通信的
https是如何实现安全通信的 如果有不正确的地方,还望指出! web基础系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 回顾 总结几个概念(具体描述可以看上一篇文章) 数字 ...
- Java继承--子类的实例化过程
一个对象的实例化过程: Person p = new Person(); 1,JVM会读取指定的路径下的Person.class文件,并加载进内存,并会先加载Person的父类(如果有直接的父类的情况 ...
- event模拟数据库链接
from threading import Thread,Event,currentThread import time e = Event() def conn_mysql(): count = 1 ...
- jfinal拦截器配置
实现aop @Before(Tx.class) public void index(){ // renderText("hello world!"); render("/ ...
- linux安装redis-3.0.7
一.Redis介绍 1.简介 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类 ...