ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

OpenMoHAA服务器搭建完全指南:Docker部署与自定义配置技巧

2026/8/4 23:44:42 拓冰建站 浏览量
OpenMoHAA服务器搭建完全指南:Docker部署与自定义配置技巧

OpenMoHAA服务器搭建完全指南:Docker部署与自定义配置技巧

【免费下载链接】openmohaaOpen re-implementation of Medal of Honor: Allied Assault including Spearhead and Breakthrough expansions with modern features and bugfixes from ioquake3 with cross-platform support项目地址: https://gitcode.com/gh_mirrors/op/openmohaa

OpenMoHAA是《荣誉勋章:联合袭击》的开源重实现项目,支持Spearhead和Breakthrough扩展包,集成了ioquake3的现代特性与跨平台支持。本指南将帮助你通过Docker快速部署OpenMoHAA服务器,并掌握关键配置技巧,让你轻松创建专属的二战射击游戏服务器。

🚀 准备工作:环境与资源要求

部署OpenMoHAA服务器前,请确保你的系统满足以下条件:

  • Docker Engine 20.10+
  • Docker Compose v2+
  • 至少1GB RAM(推荐2GB以上)
  • 10GB可用磁盘空间
  • 开放UDP端口12203(游戏端口)和12300(Gamespy端口)

OpenMoHAA支持Linux、macOS和Windows系统,本文以Linux环境为例进行演示。

🔧 步骤一:获取项目源码

首先克隆官方仓库到本地:

git clone https://gitcode.com/gh_mirrors/op/openmohaa cd openmohaa

项目容器化部署相关文件位于container/server/目录,包含完整的Docker配置和启动脚本。

🐳 步骤二:使用Docker Compose快速部署

OpenMoHAA提供了预配置的Docker Compose方案,只需简单几步即可启动服务器:

  1. 进入服务器配置目录:
cd container/server
  1. 查看默认配置文件(可选):
cat docker-compose.yaml

默认配置包含基础服务定义:

services: openmohaa-server: restart: unless-stopped image: openmohaa/full environment: - GAME_PORT=12203 ports: - "12203:12203/udp" # Game port - "12300:12300/udp" # Gamespy port command: ["+set", "com_target_game", "0", "+exec", "server.cfg"]
  1. 启动服务器:
docker-compose up -d
  1. 检查服务器状态:
docker-compose ps

成功运行后,你将看到类似以下状态:

Name Command State Ports ----------------------------------------------------------------------------------------------------- server_openmohaa-server_1 /bin/bash /entrypoint.sh ... Up 0.0.0.0:12203->12203/udp, 0.0.0.0:12300->12300/udp

OpenMoHAA服务器支持多种经典地图,图为训练地图中的坦克场景

⚙️ 步骤三:服务器核心配置详解

OpenMoHAA服务器配置主要通过server.cfg文件完成,位于容器内的/usr/local/share/mohaa/home/main/settings/目录。要自定义配置,建议通过卷挂载方式修改:

  1. 创建本地配置目录:
mkdir -p ./config/settings
  1. 从容器复制默认配置文件:
docker cp server_openmohaa-server_1:/usr/local/share/mohaa/home/main/settings/server.cfg ./config/settings/
  1. 编辑docker-compose.yaml,取消卷挂载注释:
volumes: - ./config/settings:/usr/local/share/mohaa/home/main/settings
  1. 重启服务器使配置生效:
docker-compose down && docker-compose up -d

关键配置参数说明

以下是server.cfg中常用的配置项:

  • 服务器基本信息
seta sv_hostname "My OpenMoHAA Server" # 服务器名称 seta sv_maxclients "16" # 最大玩家数 seta g_gametype "0" # 游戏类型:0=死亡竞赛,1=团队死亡竞赛,2=夺旗
  • 网络设置
seta sv_fps "20" # 服务器帧率 seta sv_timeout "120" # 玩家超时时间(秒) seta sv_allowDownload "1" # 允许资源下载
  • 游戏规则
seta g_allowVote "1" # 允许玩家投票 seta g_roundTime "15" # 回合时间(分钟) seta g_teamDamage "0" # 团队伤害:0=关闭,1=开启

🎮 步骤四:地图管理与游戏模式设置

OpenMoHAA支持丰富的地图和游戏模式,通过以下方法进行管理:

添加自定义地图

  1. 创建地图目录:
mkdir -p ./config/maps
  1. 将地图文件(.pk3格式)复制到该目录

  2. docker-compose.yaml中添加地图卷挂载:

volumes: - ./config/settings:/usr/local/share/mohaa/home/main/settings - ./config/maps:/usr/local/share/mohaa/home/main/maps

设置地图循环

编辑server.cfg文件,配置地图循环列表:

seta sv_maplist "mohdm1 mohdm2 flughafen" # 地图循环列表 seta sv_maprotation "1" # 启用地图循环

Flughafen地图的夜间战斗场景,支持多种载具和武器系统

🔄 服务器维护与更新

查看服务器日志

docker-compose logs -f

更新服务器

  1. 获取最新镜像:
docker-compose pull
  1. 重启服务器:
docker-compose down && docker-compose up -d

备份服务器配置

定期备份./config目录,确保配置和地图数据不会丢失:

tar -czf openmohaa-server-backup-$(date +%Y%m%d).tar.gz ./config

❓ 常见问题解决

服务器无法启动?

  • 检查端口是否被占用:netstat -tulpn | grep 12203
  • 查看日志排查错误:docker-compose logs
  • 确保Docker权限足够:使用sudo或添加用户到docker组

玩家无法连接?

  • 检查防火墙设置,确保UDP 12203和12300端口开放
  • 验证服务器IP和端口是否正确
  • 检查sv_allowAnonymous "1"是否启用

如何安装 mods?

将mod文件复制到./config/mods目录,然后在server.cfg中添加:

seta fs_game "modname"

📚 进阶资源

  • 官方文档:docs/
  • Docker配置文件:container/server/docker-compose.yaml
  • 启动脚本:container/server/base/entrypoint.sh
  • 服务器配置示例:container/server/full/game/home/main/settings/server.cfg

通过本指南,你已经掌握了OpenMoHAA服务器的Docker部署和基本配置方法。现在,邀请你的朋友加入游戏,体验这款经典二战射击游戏的多人对战乐趣吧!如需进一步定制服务器,可以查阅官方文档或参与社区讨论。

【免费下载链接】openmohaaOpen re-implementation of Medal of Honor: Allied Assault including Spearhead and Breakthrough expansions with modern features and bugfixes from ioquake3 with cross-platform support项目地址: https://gitcode.com/gh_mirrors/op/openmohaa

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考