
私有化部署指的是把测试管理平台安装在企业自有的服务器上,数据库、附件和账号数据都留在内网。对中大型研发团队来说,这既能满足数据管控要求,也方便统一账号、对接内网系统,并为后续的持续集成留出空间。
禅道在这类场景积累了不少落地实践。在 2025 年软件测试行业现状调查报告的评选中,禅道获评「常用测试管理工具第一名」,这些实践中相当一部分是内网私有化部署。
部署动作本身不长,容易卡住的是两处:前期环境没核对清楚,装到中途才发现组件版本不兼容;装完了没做数据初始化,平台登录得进去却用不起来。下面按真实执行顺序走一遍,重点放在这两处。

部署前要确认的环境与访问条件
下表是禅道私有化部署对运行环境的基本要求,可以用来判断现有服务器是否满足条件。
| 项目 | 要求 | 说明 |
|---|---|---|
| 操作系统 | Linux 发行版(CentOS、Ubuntu 等) | 官方推荐 Linux + Apache 组合,Nginx 其次,不建议 IIS + PHP |
| Web 与运行时 | Apache + PHP 7.0 及以上 | 20.0 版本起不再支持 PHP 5.x |
| 数据库 | MySQL 5.5 及以上 / MariaDB | 21.7 版本起 MySQL 需 8.0 及以上 |
| PHP 扩展 | pdo、pdo_mysql、json、filter、openssl、mbstring、zlib、curl、gd、iconv | 企业版与旗舰版还需 zip、xml、ldap、bcmath |
如果服务器上已经装过 Apache 或 MySQL,优先核对版本区间和扩展是否齐全,这比装到一半再排查环境报错省事得多。
下图是这些组件在同一台服务器上的位置关系,私有化部署就是在自己可控的机器上把这套结构搭起来。

安装前还要落三件事:
- 拿到 root 或 sudo 权限,一键安装包需要写入 /opt 目录;
- 确认 80、3306 端口能否使用,被占用时准备好替代端口;
- 云主机在安全组中放行实际使用的 Web 端口,否则安装成功也访问不到。
硬件规格官方没有给出统一下限,按团队规模、并发人数和数据量评估,磁盘要为备份留出余量。
选择适合自己的部署方式
| 方式 | 适合场景 | 特点 |
|---|---|---|
| 一键安装包(Linux / Windows) | 想快速上线、运维人力有限 | 内置 Web 服务、数据库与运行时,解压即用 |
| Docker 容器 | 已有容器平台、要求标准化交付 | 以镜像方式部署,版本替换与回收更规整 |
| 源码部署 | 需要自定义运行环境或二次开发 | 灵活,但组件依赖需自行维护 |
上表的三种方式都能完成 私有化部署,差别在于环境控制权和后续维护成本。多数团队从一键安装包起步就够用;已有容器规范的团队选 Docker 方式,做版本升级和回滚时更省事。
选择时注意两个细节:从 18.5 版本起,Linux 一键安装包分为 x86_64 与 arm64 两个包,需按服务器 CPU 架构下载;一键安装包内置的运行环境由官方统一维护,自建环境则要自己保证 PHP 扩展齐全。
按步骤完成部署(以 Linux 一键安装包为例)
下载安装包并解压到 /opt
在禅道官网下载页选择与服务器架构匹配的版本,然后执行:
cd /optwget https://www.zentao.net/dl/zentao/{版本号}/ZenTaoPMS.{版本号}.zbox_64.tar.gztar xvzf ZenTaoPMS.{版本号}.zbox_64.tar.gz安装包必须直接解压到 /opt。先解压到其他目录再拷贝过去,文件所有者和读写权限会发生变化;也不要为了省事把整个目录设成 777 权限,这会留下安全风险。
启动服务并确认端口
/opt/zbox/zbox start # 启动 Apache 与 MySQL/opt/zbox/zbox stop # 停止/opt/zbox/zbox restart # 重启/opt/zbox/zbox check # 检查服务状态(18.10 版本支持)
看到 Apache 与 MySQL 均启动成功的提示,即表示服务已拉起。需要换端口时在启动命令中指定,例如把 Web 端口改为 8080、数据库端口改为 3307:
/opt/zbox/zbox --aport 8080 --mport 3307 start
参数写法有版本差异,18.6 版本起短参数 -ap、-mp 调整为 --aport、--mport,照抄旧教程的命令会报错。
访问禅道并完成首次登录
浏览器打开 http://服务器IP:Web端口。首次进入先看到集成运行环境页面,选择对应版本后进入登录界面。
默认管理员账号为 admin,密码 123456,首次登录会提示修改密码。用管理员账号登录后,进入 测试管理 模块,用例、测试单、Bug 跟踪这些功能可以直接使用。
页面打不开时的排查顺序
按这个顺序检查,能覆盖大部分情况:
- 确认 zbox 服务是否在运行,用 zbox check 查看状态;
- 检查服务器防火墙是否放行 Web 端口;
- 检查 SELinux 是否拦截,可先临时设为宽容模式验证;
- 云服务器确认安全组规则已放行对应端口。
第 3 步只用于定位问题。定位完成后应按最小范围放行端口,不建议长期关闭 SELinux 或直接停用防火墙。
数据初始化:让平台真正可用
服务起来只是第一步。平台能不能用,取决于初始化的几件事有没有做完,这一节按依赖顺序拆开说。
管理员账号与安全基线
- 修改 admin 默认密码,禁止继续使用初始口令;
- 按管理职责建立独立管理员账号,日常操作使用普通账号;
- 一键安装包内置数据库的默认账户为 root、密码为空,安装后应设置强口令;
- 需要访问内置数据库管理工具时,先执行 /opt/zbox/auth/adduser.sh 添加访问账号,该入口默认不开放。
组织、用户与权限
建议从组织架构入手:先建部门与用户,再按权限分组划定可见范围,最后分配角色。禅道的权限配置入口在 后台 → 人员管理 → 权限,可以按实际工作需要灵活调整,不必一次配到位,但核心角色要先把范围定下来。
业务基础数据
禅道按产品、项目、执行三层组织研发过程,项目管理 的数据也建立在这套结构上。初始化时按现有研发流程建立对应的产品与项目,并把测试相关的规则先定下来:用例库怎么分目录、测试单怎么提、Bug 的严重程度与优先级怎么取值。规则先统一,后续的统计口径才不会乱。
历史数据导入
如果团队是从其他工具迁移过来,禅道提供数据导入与迁移能力。导入前先备份数据库,该操作只有超级管理员可用。建议在业务低峰时段执行导入,数据量大时预留更长的处理时间。具体支持的来源与字段范围,以官方文档的说明为准。
验证部署结果与设定回退路径
部署完成不等于交付完成。下面四项可以确认环境真的可用:
- 服务状态:zbox check 显示 Apache 与 MySQL 正常;
- 登录验证:用管理员账号登录,首页可以正常加载;
- 数据写入:创建一条用例或 Bug,刷新后仍可见;
- 附件上传:上传一个附件,确认服务器附件目录有对应文件写入。
同时把回退路径准备好:
- 停止服务后备份整个 /opt/zbox 目录,这是最直接的整机备份方式;
- 后台 → 系统设置 → 备份 可手动备份,并设置定时备份任务;
- 备份文件默认存放在 /opt/zbox/app/zentao/tmp/backup,可在设置中修改路径;
- 迁移到新服务器时,新旧环境的禅道版本应保持一致;跨操作系统迁移后,需在备份设置中把目录改成对应系统的路径。
常见问题
内网完全离线能部署吗?
可以。在有网络的机器上下载安装包或拉取镜像,再拷贝到内网。一键安装包下载后是一个压缩包,容器方式可以用镜像导出与导入的方式搬运,整个过程不需要服务器直接连外网。
多台服务器可以共用一套数据库吗?
一键安装包支持数据库异机连接。把数据库放到独立服务器上,需要修改数据库监听配置并授权对应账号访问,改完后重启服务生效。这种分法适合需要单独维护数据库的团队。
部署完成后还能改访问地址吗?
可以。访问端口通过 zbox 的端口参数调整;如果只是换了域名或服务器地址,还要同步更新 init 脚本生成的维护工具配置,否则备份、燃尽图更新这类命令行任务会因为地址不一致而失败。
部署私有化测试管理平台,难点不在命令本身,而在环境确认和数据初始化这两步做得是否扎实。把上面的验证清单和备份路径落实下来,这套环境才算真正交付完成。
文章标题 :私有化测试管理平台怎么部署?步骤、环境与数据初始化 ,发布者 :项目管理研究院































