- 1. 禅道介绍
- 1.1 关于禅道项目管理软件
- 1.2 如何获得支持
- 1.3 各版本功能差异
- 1.4 关注我们
- 2. 安装禅道
- 2.1. 环境搭建
- 2.1.1 搭建Ubuntu环境安装禅道
- 2.1.2 搭建Centos环境安装禅道
- 2.1.3 安装PHP的ioncube扩展
- 2.2 安装PHP的LDAP扩展
- 2.3. 安装12开源版
- 2.3.1 选择适合您的安装方法
- 2.3.2 使用云禅道在线项目管理服务
- 2.3.3 (推荐)windows用一键安装包安装
- 2.3.4 (推荐)Linux用一键安装包
- 2.3.5 linux下用lampp集成包安装
- 2.3.6 使用源码包安装(MAC系统)
- 2.3.7 MAC下用XAMPP安装禅道
- 2.3.8 MAC下用XAMPP-VM安装禅道
- 2.3.9 使用源码包安装(各系统通用)
- 2.3.10 宝塔面板安装禅道
- 2.3.11 华芸NAS在线安装
- 2.3.12 Centos7.4系统下安装httpd,mariadb,php7.2环境运行禅道
- 2.3.13 Centos8系统下安装httpd,mariadb,php7.2环境运行禅道
- 2.3.14 安装ioncube扩展
- 2.3.15 安装swoole扩展
- 2.3.16 Docker方式部署禅道
- 2.4. 安装12企业版
- 2.4.1 禅道企业版安装包安装方式(各系统通用)
- 2.4.2 (推荐)Windows一键安装包安装
- 2.4.3 (推荐)Linux一键安装包安装
- 2.4.4 centos 7.x 源码安装禅道企业版
- 2.5 在线安装云禅道
- 2.1. 环境搭建
- 3. 升级禅道
- 3.1. 升级12开源版
- 3.1.1 选择和自己环境对应的升级方式
- 3.1.2 通过源代码方式升级(通用)
- 3.1.3 windows一键安装包的升级
- 3.1.4 linux一键安装包升级
- 3.2. 升级12企业版
- 3.3 如何安装ioncube扩展
- 3.1. 升级12开源版
- 4. 维护配置
- 4.1. 维护禅道
- 4.1.1 初始化管理脚本
- 4.1.2 备份禅道
- 4.1.3 恢复删除的资源
- 4.1.4 如何更新燃尽图
- 4.1.5 一键安装包如何实现mysql异机连接
- 4.1.6 linux一键安装包配置https
- 4.1.7 禅道一键安装包迁移/更新禅道一键安装包
- 4.2. 配置禅道
- 4.2.1 设置是否允许匿名访问
- 4.2.2 如何配置email发信
- 4.2.3 如何成为超级管理员
- 4.2.4 配置禅道系统为静态访问
- 4.2.5 去掉禅道访问地址中的zentao
- 4.2.6 linux一键安装包去掉禅道访问地址中的zentao
- 4.2.7 集成禅道和svn
- 4.2.8 集成禅道和git
- 4.2.9 在第三方应用中集成禅道
- 4.2.10 第三方应用配置免密登录禅道
- 4.2.11 第三方应用集成禅道客户端进行消息通知
- 4.2.12 集成webhook
- 4.2.13 集成ZDOO
- 4.2.14 客户端集成
- 4.2.15 禅道的翻译功能
- 4.2.16 浏览器通知的设置
- 4.2.17 集成钉钉工作消息通知
- 4.2.18 集成企业微信应用消息通知
- 4.2.19 集成企业微信群机器人
- 4.2.20 集成飞书群机器人
- 4.2.21 集成飞书消息通知
- 4.2.22 解决一键安装包密码口令弱的问题
- 4.2.23 集成版本库、集成Jenkins,并进行构建
- 4.3. 性能优化
- 4.1. 维护禅道
- 5. 快速入门
- 5.1. 12版本快速入门
- 5.1.1 禅道使用的基本流程和产品、研发、测试之间的三权分立
- 5.1.2 禅道的新手教程
- 5.1.3 创建第一个产品
- 5.1.4 添加第一个需求
- 5.1.5 开始第一个项目
- 5.1.6 确定项目要完成的需求列表
- 5.1.7 为需求分解任务
- 5.1.8 提交bug
- 5.1.9 禅道的自定义功能
- 5.1.10 文档管理
- 5.1.11 如何排查产品、项目是否有访问权限
- 5.1.12 年度总结,工作内容统计一览表说明
- 5.2. 新版本快速入门
- 5.2.1 15版本禅道的新增功能
- 5.2.2 15版本禅道的界面变化
- 5.2.3 新版本禅道的最简使用
- 5.3. 12版创建分组和用户
- 5.3.1 建立部门结构
- 5.3.2 添加一个用户帐号
- 5.3.3 批量维护帐号
- 5.3.4 设置分组,建立权限体系
- 5.4. 12版本最简使用
- 5.4.1 使用禅道来进行项目任务管理
- 5.4.2 只使用禅道来做bug管理
- 5.4.3 只使用禅道来进行产品管理
- 5.4.4 个人使用禅道来做事务跟踪管理
- 5.5. 12版本基本使用
- 5.5.1 敏捷开发及scrum简介
- 5.5.2 禅道和scrum的对应关系
- 5.5.3 视频教程:第一个演示项目
- 5.5.4 维护联系人
- 5.5.5 导入excel、csv参考文档
- 5.5.6 工作方式的切换
- 5.5.7 操作获取积分功能
- 5.5.8 自定义必填项功能
- 5.6. 12版本进阶使用
- 5.6.1. 使用流程
- 5.6.1.1 禅道使用流程图解
- 5.6.2. 个人管理
- 5.6.2.1 使用待办进行个人事务管理
- 5.6.2.2 关注需要自己处理的任务、需求、bug
- 5.6.2.3 通过我的档案查看或者修改个人信息
- 5.6.2.4 视频教程:禅道使用之个人篇
- 5.6.3. 产品经理篇
- 5.6.3.1 维护产品
- 5.6.3.2 维护产品线
- 5.6.3.3 创建和评审需求
- 5.6.3.4 变更和评审需求
- 5.6.3.5 需求的状态和研发阶段
- 5.6.3.6 需求的注意事项
- 5.6.3.7 维护产品模块
- 5.6.3.8 建立发布计划
- 5.6.3.9 建立发布
- 5.6.3.10 路线图
- 5.6.3.11 文档管理
- 5.6.3.12 主持产品会议
- 5.6.3.13 参与项目管理、演示和总结
- 5.6.3.14 需求的基本统计报表
- 5.6.3.15 视频教程:禅道使用之产品经理篇
- 5.6.4. 项目经理篇
- 5.6.4.1 建立项目
- 5.6.4.2 组建项目团队
- 5.6.4.3 确定项目要完成的需求列表
- 5.6.4.4 组织进行任务分解
- 5.6.4.5 召开每天的站立会议
- 5.6.4.6 通过燃尽图了解项目的进展
- 5.6.4.7 通过各种列表的各种功能了解项目进展
- 5.6.4.8 召开演示会议和总结会议
- 5.6.4.9 项目任务基本的报表统计
- 5.6.4.10 视频教程:禅道使用之项目经理篇
- 5.6.5. 开发团队篇
- 5.6.5.1 参加项目计划会议,分解任务
- 5.6.5.2 领取任务,并每天更新任务
- 5.6.5.3 通过看板和树状图查看任务
- 5.6.5.4 创建版本
- 5.6.5.5 申请测试
- 5.6.5.6 解决bug
- 5.6.5.7 文档管理
- 5.6.5.8 确认bug
- 5.6.5.9 视频教程:禅道使用之开发团队篇
- 5.6.6. 测试团队篇
- 5.6.6.1 维护bug视图模块
- 5.6.6.2 提交bug
- 5.6.6.3 验证bug,关闭
- 5.6.6.4 激活bug
- 5.6.6.5 找到自己需要的bug
- 5.6.6.6 维护测试用例视图
- 5.6.6.7 创建测试用例
- 5.6.6.8 测试套件、报告和公共用例库的维护
- 5.6.6.9 管理测试版本
- 5.6.6.10 执行用例,提交Bug
- 5.6.6.11 查看报表统计
- 5.6.6.12 视频教程:禅道使用之测试团队篇
- 5.6.1. 使用流程
- 5.7. 12版本企业版使用
- 5.7.1 开源版功能
- 5.7.2 添加用户和权限维护
- 5.7.3 甘特图功能简介
- 5.7.4 工作日志管理功能简介
- 5.7.5 代码库(SVN GIT)及代码评审
- 5.7.6 日历功能简介
- 5.7.7 Excel导入导出功能简介
- 5.7.8 短信通知功能简介
- 5.7.9 运维管理
- 5.7.10 导出为Word功能简介
- 5.7.11 水晶报表(自定义报表)功能简介
- 5.7.12 LDAP用户验证功能简介
- 5.7.13 反馈管理
- 5.7.14 统计视图功能简介
- 5.7.15 文档管理
- 5.7.16 报表导出功能简介
- 5.7.17. 办公管理
- 5.7.18. 工作流
- 5.7.18.1 工作流内置流程
- 5.7.18.2 工作流功能简介
- 5.7.18.3 自定义内置工作流
- 5.7.18.4 新增工作流示例
- 5.7.18.5 工作流 JS、CSS 使用说明
- 5.7.19 视频及PPT资料
- 5.1. 12版本快速入门
- 6. 按照角色使用
- 6.1. 管理员
- 6.2. 产品经理
- 6.3. 项目经理
- 6.4. 研发人员
- 6.4.1 参加产品计划会议,分解任务
- 6.4.2 领取任务,并每天更新任务
- 6.4.3 创建版本,提交测试
- 6.4.4 确认Bug,解决Bug
- 6.4.5 执行的综合、需求、Bug、任务看板
- 6.5. 测试人员
- 7. 功能介绍
- 7.1. 核心管理结构
- 7.1.1 项目(Project)
- 7.1.2 产品(Product)
- 7.1.3 执行(Execution)
- 7.1.4 管理模型
- 7.2. 地盘
- 7.3. 项目集
- 7.4. 产品
- 7.5. 项目
- 7.5.1 融合敏捷项目
- 7.5.2 融合瀑布项目
- 7.5.3. 项目通用功能
- 7.5.3.1 项目的基本设置
- 7.5.3.2 维护项目的执行
- 7.5.3.3 维护项目的需求
- 7.5.3.4 维护项目的Bug、用例、测试单、测试报告
- 7.5.3.5 维护项目的文档
- 7.5.3.6 维护项目的版本、发布
- 7.5.4 项目资源日历(插件)
- 7.6. 执行
- 7.6.1 参加产品计划会议,分解任务
- 7.6.2 领取任务,并每天更新任务
- 7.6.3 创建版本,提交测试
- 7.6.4 确认Bug,解决Bug
- 7.7. 测试
- 7.8. 自动化测试
- 7.9. DevOps(旧版)
- 7.9.1. DevOps 功能
- 7.9.1.1 Git/SVN版本库管理和查看代码
- 7.9.1.2. 集成GitLab
- 7.9.1.2.1 绑定用户,关联issue,进行构建
- 7.9.1.2.2 合并请求
- 7.9.1.2.3 禅道中GitLab的权限
- 7.9.1.3 集成Jenkins,进行构建
- 7.9.1.4 集成SonarQube
- 7.9.1. DevOps 功能
- 7.10. 看板
- 7.10.1 通用看板功能
- 7.11. 文档
- 7.12. BI
- 7.13. 组织
- 7.13.1 团队成员和工作信息
- 7.13.2 人力资源日历(需安装插件)
- 7.13.3 组织动态
- 7.13.4 公司信息
- 7.14. 后台设置
- 7.14.1. 系统设置
- 7.14.2. 人员管理
- 7.14.3. 模型配置
- 7.14.3.1 融合敏捷模型
- 7.14.4. 功能配置
- 7.14.5. 通知设置
- 7.14.6 插件管理
- 7.14.7 二次开发
- 7.14.8 数据导入
- 7.14.9. 权限维护和控制
- 7.14.9.1 产品的权限维护和访问控制
- 7.14.9.2 执行的权限维护和访问控制
- 7.14.9.3 项目和执行的访问控制和数据关系
- 7.14.10. DevOps设置
- 7.14.10.1. 资源
- 7.15. 客户端增强版会议SRS
- 7.15.1. 音视频会议配置
- 7.15.1.1 安装音视频服务端
- 7.15.1.2 安装SRS音视频服务端
- 7.15.1.3 开启和配置音视频功能
- 7.15.2. 发起会议
- 7.15.2.1 一对一会话中发起音视频会议
- 7.15.2.2 群组会话中发起音视频会议
- 7.15.2.3 独立发起音视频会议入口
- 7.15.3. 加入会议
- 7.15.3.1 分享音视频会议到会话
- 7.15.3.2 通过会议的ID加入会议
- 7.15.4. 预约会议
- 7.15.4.1 预约会议
- 7.15.5. 会议应用
- 7.15.5.1 音视频会议应用
- 7.15.1. 音视频会议配置
- 7.16. 客户端增强版会议Jitsi
- 7.1. 核心管理结构
- 8. 其他相关
Docker方式部署禅道 分享链接 /book/zentaopms/405.html?releaseID=1
本篇目录
一、环境准备
环境与配置 | 测试环境 | 推荐配置 | 备注 |
---|---|---|---|
Docker | 20版本 | 20版本以上 | |
操作系统 | Linux或Windows | Linux | 镜像支持 x86_64 和 arm64 架构 |
CPU | 1核心 | 2核心 | |
内存 | 1G | 4G | |
硬盘 | 10G | 50G以上 |
注意:
- 生产环境可以按照禅道的用户数以及项目的规模增减配置。
- 生产环境建议运行在Linux系统
查看Docker版本:
docker -v
Docker version 20.10.20, build 9fdeb9c
查看CPU架构:
uname -a
Linux hostname 5.10.0-18-amd64 #1 SMP Debian 5.10.140-1 (2022-09-02) x86_64 GNU/Linux
二、下载禅道镜像
目前支持在线下载和离线导入两种部署禅道镜像的方式,可根据自己环境进行选择。
2.1 在线下载
禅道镜像已放于Docker Hub上,地址为:https://hub.docker.com/r/easysoft/zentao/tags
可根据所需版本拉取对应版本的镜像,默认latest为禅道开源最新版本。
sudo docker pull [镜像名]:[镜像标签]
例如拉取禅道开源版18.5版本命令如下:
sudo docker pull hub.zentao.net/app/zentao:18.5
注意:
- 为了方便国内用户拉取镜像,每次发版会在docker官方镜像仓库和禅道镜像仓库都推送镜像。
禅道版本和镜像tag对应关系如下:
禅道版本 | 镜像标签 |
---|---|
开源版 | 以数字开头,如:18.5 |
专业版 | 以biz开头,如:biz8.5 |
企业版 | 以max开头,如:max4.5 |
IPD版 |
以ipd开头,如:ipd1.0.1 |
2.2 离线导入
禅道版本对应的镜像归档文件如下表所示:
禅道版本 | 镜像名字 | 镜像归档文件下载路径 |
---|---|---|
开源版18.5 | hub.zentao.net/app/zentao:18.5 | zentao_18.5.gz |
企业版8.5 | hub.zentao.net/app/zentao:biz8.5 | zentao_biz8.5.gz |
旗舰版4.5 | hub.zentao.net/app/zentao:max4.5 | zentao_max4.5.gz |
IPD版1.0.1 | hub.zentao.net/app/zentao:ipd1.0.1 | zentao_ipd1.0.1.gz |
注意:
- 归档文件的命名格式为 【产品名+下划线+版本号.gz】,以后发布产品也依照此格式。
导入镜像步骤如下:
- 下载禅道镜像归档压缩包到U盘,或者刻录成光盘
- 将U盘或光盘的禅道镜像归档复制到离线主机的临时目录, 如/tmp
- 解压并载入镜像:
# 命令实例
sudo gunzip -c [镜像归档文件名] | docker load
# 如:
sudo gunzip -c zentao_18.5.tar.gz | docker load
da07e39e2957: Loading layer [======================>] 85.5kB/85.5kB
feab8630a9c5: Loading layer [======================>] 11.73MB/11.73MB
d7508f92bff7: Loading layer [======================>] 86.37MB/86.37MB
5ca65d83e7b7: Loading layer [======================>] 80.38MB/80.38MB
ed0cfb41d961: Loading layer [======================>] 2.673MB/2.673MB
c00e8d737e49: Loading layer [======================>] 10.3MB/10.3MB
a186fa70a0c6: Loading layer [======================>] 7.121MB/7.121MB
95e38b2ff244: Loading layer [======================>] 7.473MB/7.473MB
f4afc75280d8: Loading layer [======================>] 191.7MB/191.7MB
60721d394939: Loading layer [======================>] 89.6kB/89.6kB
6db6be18e64c: Loading layer [======================>] 15.87kB/15.87kB
cf41eda4f35b: Loading layer [======================>] 191.7MB/191.7MB
Loaded image: hub.zentao.net/app/zentao:18.5
三、启动禅道
3.1 创建docker网络驱动
sudo docker network create --subnet=[ip范围] [网络驱动名]
- ip范围:例如172.172.172.0/24的意思是,IP可以指定范围为172.172.172.1到172.172.172.254;
- 网络驱动名:创建的网络驱动名,可随意指定;
例如:
sudo docker network create --subnet=172.172.172.0/24 zentaonet
3.2 启动禅道容器
命令格式如下:
sudo docker run \
--name [容器名] \
-p [主机端口]:80 \
--network=[网络驱动名] \
--ip [容器IP] \
--mac-address [mac地址] \
-v [主机禅道目录]:/data \
-e MYSQL_INTERNAL=true \
-d hub.zentao.net/app/zentao:[镜像标签]
参数说明:
- 容器名:启动的容器名字,可随意指定;
- 主机端口:主机端口为web访问端口;
- 网络驱动名:上文创建的网络驱动名
zentaonet
; - 容器IP:在网络驱动范围内选择一个作为该容器的固定ip;
- mac地址:指定固定的mac地址,建议范围为02:42:ac:11:00:00 到 02:42:ac:11:ff:ff;
- 主机禅道目录:必须指定,方便附件等数据的持久化;
- MYSQL_INTERNAL=true:启用容器内置MySQL,默认用户名为
root
,密码是123456
- 镜像标签:禅道版本
例如:在主机上创建空目录 /data/zentao
,执行如下命令
sudo docker run \
--name zentao \
-p 80:80 \
--network=zentaonet \
--ip 172.172.172.172 \
--mac-address 02:42:ac:11:00:00 \
-v /data/zentao:/data \
-e MYSQL_INTERNAL=true \
-d hub.zentao.net/app/zentao:18.5
注意:
- 如果需要远程连接数据库,可以增加一个端口映射
-p [主机端口]:3306
- 如果在单个主机上部署多个禅道系统,只需要指定不同的 [容器名]、[主机端口]、[容器IP]、[mac地址]、[禅道目录]即可部署多个禅道系统,例如:
sudo docker run \
--name zentao2 \
-p 8080:80 \
-p 3306:3306 \
--network=zentaonet \
--ip 172.172.172.173 \
--mac-address 02:42:ac:11:00:01 \
-e MYSQL_INTERNAL=true \
-v /data/zentao2:/data \
-d hub.zentao.net/app/zentao:18.5
3.3 查看容器是否启动成功
执行如下命令查看容器是否启动成功,如果没有则启动失败,去掉-d选项进行前台运行调试容器,如有任何问题请咨询禅道商务同事。
# 查看禅道容器
docker ps | grep zentao
# 查看禅道容器日志
docker logs -f zentao
四、安装禅道
浏览器直接访问 http://宿主机ip:宿主机映射端口
五、升级禅道
推荐用按照此文档升级:https://www.zentao.net/book/zentaopms/586.html
5.1 先停止禅道容器,为备份数据做准备
# 停止禅道容器
docker stop zentao
# 删除容器
docker rm zentao
5.2 备份禅道数据
为安全起见,将上文所述的 [主机禅道目录] 进行备份,例如将 /data/zentao
进行拷贝至主机其他目录。
cp -rp /data/zentao /data/zentao_bak_`date +%Y%m%d`
5.3 拉取新版本禅道镜像
docker pull hub.zentao.net/app/zentao:[新版本]
# 如
docker pull hub.zentao.net/app/zentao:18.7
5.4 启禅道容器
sudo docker run \
--name zentao \
-p 80:80 \
--network=zentaonet \
--ip 172.172.172.172 \
--mac-address 02:42:ac:11:00:00 \
-v /data/zentao:/data \
-e MYSQL_INTERNAL=true \
-d hub.zentao.net/app/zentao:18.7
访问 http://你的ip:端口/ 按照提示完成升级
开源版、专业版、企业版的升级相似,具体可以参考开源版禅道的升级 http://www.zentao.net/help-read-78960.html。
六、FAQ
A:如果我使用的是旧版的禅道镜像,如何升级到新版
请参考文档:旧版Docker镜像升级说明
A:如何修改容器里的MySQL配置
容器内置的MySQL数据及配置会保存到 /data/mysql 目录内,如果调整配置,可以直接在主机的目录下修改,完成后重启容器
A:如何远程连接容器里的mysql
请参考:https://www.zentao.net/book/zentaopmshelp/276.html
1)、确认主机与容器中mysql有端口映射;
2)、确认远程登录用户权限,如使用root用户
rename user 'root'@'localhost' to 'root'@'%';