
私有化项目协作工具的落地,卡点通常不在功能,而在能不能装得上、连得通、权限分得清。以禅道的 私有化部署 为例,整条链路其实不长:确认服务器和环境跑不跑得动,把程序装上去并启动服务,再把公司的人和权限配进去。下面按这个顺序展开,每一步都给出可观察的成功信号,照着走完就能判断自己是做对了,还是卡在哪一环。
部署前的环境与资源前提
先回答一个问题:这台服务器能不能长期稳定地跑 Web 服务和数据库。能,再往下走;不能,先补环境。
服务器、网络与端口
需要一台可长期在线的服务器,物理机、虚拟机、内网云主机都可以,并有一个同事都能访问到的固定地址。
- 内网访问是常态:团队在同一内网时,用服务器内网 IP 加端口就能访问,域名解析是可选项。
- 端口要先看有没有被占:一键安装包内置 Apache 和 MySQL,默认端口是 80 和 3306。服务器上已经跑了别的网站或数据库时,这两个端口很可能被占用,需要在启动时改。云服务器还要在安全组里放行对应端口,只在本机防火墙放行不够。
- 硬件配置没有官方基线:禅道安装手册没有给出统一的硬件最低配置,网上流传的具体数字多为第三方经验值。评估时按成员数量、需求与 Bug 的历史数据量、附件体积三项估算,并给数据库和附件预留增长空间,备份盘单独规划。
运行环境组合与 PHP 扩展
不用一键安装包、而是把禅道挂到已有环境上时,需要对齐官方的环境组合。
官方推荐 Linux + Apache + PHP 7.0 以上 + MySQL 5.5 以上 / MariaDB;Nginx 次之,不推荐 IIS 与 PHP 的组合。
PHP 需要加载这些扩展:pdo、pdo_mysql、json、filter、openssl、mbstring、zlib、curl、gd、iconv。使用禅道企业版或旗舰版时,还需要 zip、xml、ldap、bcmath。Linux 下不建议自行编译 PHP,用系统自带的包管理器安装,后续升级和排障都更省事。
选一键安装包则简单得多:Apache、PHP、MySQL 和 XXD 都已内置,不用单独安装任何一项。上面这份清单只在自建 LAMP 环境时才需要逐项核对。
安装包版本与 CPU 架构
从禅道官网的下载页面取当前版本。从 18.5 起,Linux 一键安装包分为 x86_64 位和 arm64 位两个包,必须按服务器的 CPU 架构选,选错会在解压或启动阶段直接失败。
版本号随发布更新,本文出现的版本号只用于说明格式,实际以下载页面上的当前版本为准。
私有化部署的操作步骤
下面的命令以 Linux 一键安装包为准,全程在服务器上以 root 或具备 sudo 权限的账号执行。

第一步:下载安装包并解压到 /opt
cd /optwget https://www.zentao.net/dl/zentao/<版本号>/ZenTaoPMS.<版本号>.zbox_64.tar.gztar xvzf ZenTaoPMS.<版本号>.zbox_64.tar.gz
两条容易忽略的约束:
- 不要先解压到别的目录再拷贝到 /opt,这一步会改变文件的所有者和读写权限
- 不要图省事把整个目录设成 777 权限
解压完成后,/opt 下会生成 zbox 目录,所有服务都在这里面。
第二步:启动服务并确认端口
/opt/zbox/zbox start # 启动全部服务/opt/zbox/zbox status # 查看服务状态与版本/opt/zbox/zbox restart # 重启服务/opt/zbox/zbox stop # 停止服务/opt/zbox/zbox check # 让配置修改立即生效(18.10 及以上版本)
成功信号是 status 输出中 Apache、PHP、MySQL 均显示 running。用云服务器时,注意把实际使用的 Apache 端口在安全组中放行。
如果 80 或 3306 已被占用,启动时一并改端口:
/opt/zbox/zbox --aport 8080 --mport 3307 start
需要开机自启的话,把 /opt/zbox/zbox restart 加入操作系统的自启配置。
第三步:访问并完成初始安全设置
服务启动后,浏览器访问 http://服务器IP:端口 就能打开登录页。页面打不开时,先关闭服务器上的防火墙和 SELinux,或在安全组中放行端口,再刷新重试。
默认管理员账号是 admin、密码 123456,登录后第一件事就是改掉它。数据库默认账号 root、密码 123456 同样要修改,否则相当于把内网数据敞开。改完这两处,登录页能正常打开、能正常进入产品与项目页面,部署这一步就算完成。
部署阶段的两类分支处理
环境干净时,上面的步骤一次就能过。服务器上已有其他服务、或需要跨网络访问时,会走到下面两个分支。
服务器上已经有 Web 或数据库服务
改端口是最省事的做法,--aport 与 --mport 两个参数够用。也可以让禅道复用已有的 MySQL:18.10 及以上版本可在 zbox 根目录的 .env 文件中把 MYSQL_HOST、MYSQL_PORT、MYSQL_PASS 指向外部数据库,并通过 MYSQL_SERVICE、APACHE_SERVICE 开关决定是否启用内置服务;改完执行 zbox check 让配置生效。服务器上已有 Nginx 时,可调整 .env 中的 APACHE_HOST,再由外部 Web 服务统一转发。
纯内网部署与远程访问的边界
私有化部署的价值在于数据留在企业内网,因此不建议为了远程访问直接把端口映射到公网。远程办公成员通过 VPN 接入内网再访问,是更稳妥的做法。需要让外部客户或同事了解项目进展时,可以用匿名访问功能,但要先在组织—公司的设置中放开匿名登录,并只把允许匿名登录的人员放进 guest 分组。
账号体系配置:部门、用户与权限分组
私有化项目协作工具装好之后,账号体系才决定谁能看到什么、谁能改什么。禅道的组织管理分三层:部门与岗位、用户、权限分组,配置顺序也是从上到下。

先建部门与岗位结构
进入后台—人员管理,先把公司和部门结构维护成与实际组织一致。部门是用户归属的容器,后续按部门筛选人员和分配权限都靠它。岗位信息同样要填准确,新用户添加时会按职位默认分配对应的权限分组。
添加用户并选择界面类型
在后台—人员管理—用户下,可以添加用户、批量添加用户、批量编辑用户。进入添加页面后需要维护用户类型、部门、用户名、密码、界面类型、姓名、职位、权限等信息。
界面类型决定这个账号看到的功能范围:综合研发界面面向研发角色,运营管理界面面向运营管理角色,IPD 版本还提供需求与市场管理相关界面。选择职位后系统会按职位默认分配权限分组,不合适可以再调整。提交前要在页面底部输入当前操作者的密码确认,这一点在批量添加时同样容易漏掉。
用权限分组控制能做什么、能看什么
权限由分组决定,不直接绑在个人账号上,这是禅道权限模型的关键,一个用户可以同时属于多个分组。每个分组有三个维护入口:
- 视野维护:设置该分组能访问哪些视图,以及能访问哪些项目集、产品、项目和执行;留空表示不做限制
- 权限维护:按模块和具体动作勾选,可以细到「添加待办」这类单项操作
- 成员维护:把用户加进该分组
配置时留意页面给出的两个提示:依赖的权限会提醒你开启某个动作还需同时开启哪些基础权限,否则功能不可用;推荐的权限列出系统判断的配套项,一并勾上更完整。权限相近的分组可以用复制分组快速创建,省去重复勾选。
分组配置完成不等于权限生效,还要把用户加入分组——可以在成员维护里勾选人员,也可以在用户编辑页选择所属分组,两者结果一致。
禅道内置了几个定位特殊的权限分组,适用的对象和普通分组不同。
| 分组类型 | 适用对象 | 需要留意的点 |
|---|---|---|
| 受限用户 | 新入职成员 | 只能编辑与自己相关的需求、任务、Bug,不能新增 |
| guest | 需要匿名查看的同事或客户 | 需先在组织—公司中允许匿名登录,再把人员加入该分组 |
| 项目管理员 | 高管或需要批量授权的特殊人员 | 可对项目集、产品、项目、执行批量授予管理权限 |
把新人和外部访客优先放进受限或 guest 分组,能减少误操作和越权查看;项目管理员分组则省去逐个对象授权的重复操作。
部署与账号体系的验收清单
部署和权限配置都做完后,按下面这张表逐项核对,可以覆盖绝大多数「看起来装好了但用不了」的情况。
| 检查项 | 预期结果 |
|---|---|
| 服务进程状态 | zbox status 输出中 Apache、PHP、MySQL 均为 running |
| 页面访问 | 浏览器打开服务器地址与端口,出现禅道登录页 |
| 管理员登录 | 能用管理员账号登录,且初始密码已改为强密码 |
| 数据库口令 | MySQL root 密码已从默认值修改 |
| 部门结构 | 后台部门列表中能看到与实际组织一致的结构 |
| 新增用户登录 | 新用户能在独立浏览器中登录,界面类型显示正确 |
| 权限分组 | 目标分组已配置权限与视野,并经成员维护加入对应用户 |
| 视野隔离 | 受限范围成员登录后,未授权的产品、项目或视图不可见 |
| 受限用户行为 | 受限用户可以编辑与自己相关的条目,且无法新增需求、任务或 Bug |
如果服务状态和页面访问都正常,但某个成员登录后看不到项目,问题通常出在视野维护上:留空代表不限制,一旦选了具体对象,就只在这些对象范围内可见。
规模不大的团队可以先只建两三个权限分组,用一两周跑一遍真实流程,再按实际暴露的问题细化视野和动作权限。私有化项目协作工具能不能长期用起来,往往不取决于部署那半天做得快不快,而取决于权限模型是否可持续维护——一次配得过细,反而会因为依赖权限漏勾、成员忘加分组而频繁报障。
文章标题 :私有化项目协作工具怎么部署?步骤、环境与账号体系配置 ,发布者 :项目管理研究院

































