十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

15分钟跑起 AzerothCore-WoTLK:Docker 部署实战指南

15分钟跑起 AzerothCore-WoTLK:Docker 部署实战指南 15分钟跑起 AzerothCore-WoTLKDocker 部署实战指南【免费下载链接】azerothcore-wotlkComplete Open Source and Modular solution for MMO项目地址: https://gitcode.com/GitHub_Trending/az/azerothcore-wotlkAzerothCore-WoTLK 是一套开源的魔兽世界服务器解决方案完整实现了《巫妖王之怒》版本的游戏逻辑。读完这篇 AzerothCore Docker 部署教程你会用 Docker Compose 在自己机器上搭起 authserver 和 worldserver 两个核心服务配上客户端就能登录自己创建的角色。为什么走 Docker 这条路理由很简单这套项目依赖不少clang 工具链、Boost、MySQL镜像把这些全部打包好了宿主机只需要装一个 Docker。跟传统手动部署对比一下差别有多大对比项传统手动部署Docker Compose 部署依赖安装在宿主机逐个装编译器和第三方库版本冲突是常态构建环境打包在镜像里宿主机零依赖数据库MySQL 直接跑在宿主机上独立容器加数据卷和系统环境隔离重置环境重新装一遍全部依赖停掉容器重建即可第一次构建镜像要 30~60 分钟要编译整个服务端有 Docker 层缓存之后后续构建会快得多。准备清单动手前先备好这 4 样Docker 与 Compose v2 插件跑容器和编排都靠它Docker Desktop 自带Linux 用发行版包管理器装。确认方式docker compose version有版本号输出。至少 8GB 空闲内存首次构建要完整编译 C 代码内存不够编译会 OOM 挂掉。网络能访问 Docker Hub 和官方数据源构建要拉基础镜像首次启动还要自动下载客户端地图数据约 1~2GB。宿主机 3306、3724、8085 三个端口空闲分别是数据库、认证、世界服务的默认映射端口。被占用也没关系后文讲怎么改。分步部署从 clone 到登录第 1 步拿到源码克隆仓库并进入目录git clone https://gitcode.com/GitHub_Trending/az/azerothcore-wotlk cd azerothcore-wotlk确认成功目录下能看到docker-compose.yml和apps/docker/Dockerfile两个文件说明部署入口齐全。第 2 步构建镜像执行构建命令首次会比较久泡杯咖啡回来docker compose build确认成功运行docker images | grep ac-wotlk能看到ac-wotlk-worldserver、ac-wotlk-authserver、ac-wotlk-db-import、ac-wotlk-client-data四个镜像。第 3 步启动整套服务一条命令拉起全部容器docker compose up -d这里有个容易慌的点ac-db-import负责首次导入数据库ac-client-data-init负责下载地图数据两个都是跑完即退的一次性容器第一次启动总共要等十几分钟到半小时不等这是正常的别急着下结论说它挂了。确认成功docker compose ps里ac-database状态为 healthyac-db-import和ac-client-data-init显示 Exited (0)ac-authserver和ac-worldserver在 running。第 4 步创建管理员账号worldserver 自带控制台挂上去建账号docker compose attach ac-worldserver AC account create admin password 3 -1⚠️ 建完账号用CtrlP再按CtrlQ退出控制台直接关终端有几率把 worldserver 一起带走。确认成功重新 attach 后执行account get admin能查到刚才建的账号记录说明账号已入库。验证部署真的成功了三种手段由浅入深第一看服务状态docker compose ps核心四个容器没有处于 restarting 或 exited非一次性容器状态就算过。第二看 worldserver 日志里的关键行docker compose logs ac-worldserver | grep -i ready to accept输出里出现World Server is ready to accept client connections代表它已连上数据库并监听客户端端口。第三最直接的把魔兽客户端指向你机器的 IP默认走 3724 端口取服务器列表能看到 realm 名称登录进去部署才算真正闭环。四个高频坑症状、原因、修复症状worldserver 迟迟不启动日志停在等待。原因数据库导入或客户端数据下载还没跑完worldserver 按编排顺序在等它们。 修复docker compose ps确认一次性容器是否已 Exited (0)没跑完就继续等如果ac-client-data-init报网络错误检查宿主机出网后docker compose up -d再试。症状up -d时提示端口被占用。原因宿主机已有 MySQL 或其他服务占了 3306/3724/8085。 修复仓库里 docker-compose.yml 建议不要直接改外部端口都支持环境变量覆盖DOCKER_DB_EXTERNAL_PORT3307 \ DOCKER_AUTH_EXTERNAL_PORT3725 \ DOCKER_WORLD_EXTERNAL_PORT8086 \ docker compose up -d改完后客户端连接时用对应的新端口。症状客户端能列出服务器但一登录就报错。原因还没创建账号或者账号权限等级不对认证直接拒绝。 修复按第 4 步建好账号account create的倒数第二个参数是等级3 是 GM 权限建完用account get 名字核对。症状worldserver 反复重启日志提到找不到地图文件。原因ac-client-data-init没把地图和 DBC 数据下载成功游戏世界加载失败。 修复docker compose logs ac-client-data-init看具体报错基本是网络或磁盘空间问题处理后重新docker compose up -d数据会下到ac-client-data数据卷里。上线之后的进阶方向配置调整容器内配置走环境变量优先策略细节见 doc/ConfigPolicy.md容器专用配置模板在 conf/dist/。模块开发想加自定义功能从 modules/how_to_make_a_module.md 入手仓库自带create_module.sh脚手架需要边改代码边跑的话compose 里已内置devprofile 的开发服务器详见 apps/docker/README.md。监控grafana/ 目录提供了现成的面板配置通用、地图、网络、性能四个维度有监控栈的话可以直接导入。以上就是完整的 WoTLK 服务器 Docker 部署流程四步起步、三种验证、四个坑位。日常运维和 Docker Compose 配置细节继续参考仓库内 apps/docker/README.md 和 doc/ConfigPolicy.md 即可。【免费下载链接】azerothcore-wotlkComplete Open Source and Modular solution for MMO项目地址: https://gitcode.com/GitHub_Trending/az/azerothcore-wotlk创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表