专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

热门搜索:openclaw🔥nginx🔥redis🔥mysqlopenjdkcursorweb2apimemgraphzabbixetcdubuntucorednsjdk
zentao

easysoft/zentao

easysoft

禅道官方(ZenTao Official)是为企业及团队提供专业项目管理软件与服务的官方平台,专注于产品管理、项目协作、任务跟踪、缺陷管理等一体化解决方案,助力团队高效规划研发流程、统筹资源分配、把控项目进度,实现从需求提出到产品交付的全流程可视化管理,提升协作效率与项目成功率。

139 次收藏下载次数: 0状态:社区镜像维护者:easysoft仓库类型:镜像最近更新:22 天前
轩辕镜像,不浪费每一次拉取。点击查看
版本下载
轩辕镜像,不浪费每一次拉取。点击查看

禅道官方镜像(ZenTaoPMS)

!GitHub Workflow Status (event) !Docker Pulls !Docker Image Size !GitHub tag

特别说明

从 18.6 版本开始(企业版 8.6 ,旗舰版 4.6),我们重新调整了docker镜像的结构,如果您从其他的版本升级到 18.6 之后的版本,请务必参考【 旧版Docker镜像升级说明】,全新安装不受影响。

快速参考

  • 通过 渠成软件百宝箱 一键安装 ZenTao
  • https://github.com/quicklyon/zentao-docker
  • https://github.com/easysoft/zentaopms
  • ZenTao 官网

一、关于 ZenTao

禅道是一款开源的全生命周期项目管理软件,基于敏捷和CMMI管理理念进行设计,集产品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体,完整地覆盖了项目管理的核心流程。

禅和道是中国文化中极具代表意义的两个字,是中国传统文化的结晶。我们之所以选用“禅道”作为我们软件的名字,是希望通过这两个字来传达我们对管理的理解和思考。我们希望通过禅道来进行的管理,可以摒弃繁文缛节,还原管理的本质!

!https://raw.githubusercontent.com/quicklyon/zentao-docker/master/.template/screenshots.png

ZenTao官网:[***]

二、支持的版本(Tag)

由于版本比较多,这里只列出最新的5个版本,更详细的版本列表请参考:https://hub.docker.com/r/easysoft/quickon-zentao/tags/

镜像版本

镜像地址:

  • hub.zentao.net/app/zentao(mirror镜像)

  • https://hub.docker.com/r/easysoft/zentao

  • 开源版

    • latest, 18.6, 18.6-20230831
    • 18.5, 18.5-20230713
    • 18.4, 18.4-20230625
    • 18.3-20230424
    • 18.2-20230315
    • 18.1-20230216
  • 企业版

    • biz8.6, biz8.6-20230831
    • biz8.6.k8s, biz8.6.k8s-20230831
    • biz8.5, biz8.5-20230713
    • biz8.5.k8s, biz8.5.k8s-20230713
    • biz8.4, biz8.4-20230625
    • biz8.4.k8s, biz8.4.k8s-20230625
    • biz8.3-20230424
    • biz8.3.k8s-20230424
    • biz8.2-20230315
    • biz8.2.k8s-20230315
  • 旗舰版

    • max4.6, max4.6-20230831
    • max4.6.k8s, max4.6.k8s-20230831
    • max4.5, max4.5-20230713
    • max4.5.k8s, max4.5.k8s-20230713
    • max4.4, max4.4-20230625
    • max4.4.k8s, max4.4.k8s-20230625
    • max4.3-20230424
    • max4.3.k8s-20230424
    • max4.2-20230315
    • max4.2.k8s-20230315
  • IPD版本

    • ipd1.1, ipd1.0.1-20230831
    • ipd1.0, ipd1.0-20230802
    • ipd1.0.beta1-20230522
  • 迅捷版

    • lite1.2-20221205
  • 迅捷企业版

    • litevip1.2-20221205

三、获取镜像

推荐从 https://hub.docker.com/r/easysoft/quickon-zentao 拉取我们构建好的官方Docker镜像。

bash
docker pull hub.zentao.net/app/zentao:latest

如需使用指定的版本,可以拉取一个包含版本标签的镜像,在Docker Hub仓库中查看 https://hub.docker.com/r/easysoft/quickon-zentao/tags/

bash
docker pull hub.zentao.net/app/zentao:[TAG]

四、运行镜像

禅道容器镜像做了特殊处理,将所有需要持久化的数据都保存到了 /data 目录,因此,运行禅道容器镜像,您只需要将持久化目录挂载到容器的 /data 目录即可。

如果挂载的目录为空,首次启动会自动初始化相关文件

bash
docker run -it \
    -v $PWD/data:/data \
    -e MYSQL_INTERNAL=true \
    hub.zentao.net/app/zentao:latest

执行上面的命令后,会启动禅道镜像,通过设置 MYSQL_INTERNAL=true 会启动内置的MySQL服务。

4.1 使用外部的MySQL服务

连接到外部MySQL服务:

bash
docker run -it \
    -v $PWD/data:/data \
    -e MYSQL_INTERNAL=false \
    -e ZT_MYSQL_HOST=<你的MySQL服务地址> \
    -e ZT_MYSQL_PORT=<你的MySQL服务端口> \
    -e ZT_MYSQL_USER=<你的MySQL服务用户名> \
    -e ZT_MYSQL_PASSWORD=<你的MySQL服务密码> \
    -e ZT_MYSQL_DB=<禅道数据库名> \
    hub.zentao.net/app/zentao:latest

通过设置 MYSQL_INTERNAL=false ,并且设置MySQL相关的环境变量,运行镜像后,可以连接到外部的MySQL

如果用dockoer-compose运行,可以参考 docker-compose.yml.example 文件:

yaml
...
# mysql service for zentao
  zentao-mysql:
    image: mysql:5.7
    container_name: zentao-mysql
    ports:
      - '13306:3306'
    volumes:
      - /data/zentao/db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=pass4Zentao
      - ZT_MYSQL_DB=zentao
    networks:
      - zentao-net
...

五、环境变量

变量名默认值说明
DEBUGfalse是否打开调试信息,默认关闭
PHP_SESSION_TYPEfilesphp session 类型,files | redis
PHP_SESSION_PATH/data/php/sessionphp session 存储路径
PHP_MAX_EXECUTION_TIME120最大执行时间,单位秒,有助于防止有问题程序占尽服务器资源。默认120
PHP_MEMORY_LIMIT256M单个php进程允许分配的最大内存
PHP_POST_MAX_SIZE128M允许最大Post数据大小
PHP_UPLOAD_MAX_FILESIZE128M单个文件上传的最大值
MYSQL_INTERNALfalse使用内部的MySQL,默认关闭
ZT_MYSQL_HOST127.0.0.1MySQL 主机地址
ZT_MYSQL_PORT3306MySQL 端口
ZT_MYSQL_DBzentaozentao数据库名称
ZT_MYSQL_USERrootMySQL用户名
ZT_MYSQL_PASSWORDpass4zenTaoMySQL密码
LDAP_ENABLEDfalse是否启用LDAP
LDAP_HOST127.0.0.1LDAP服务主机地址
LDAP_PORT389LDAP服务端口
LDAP_BASEDNdc=quickon,dc=orgLDAP BaseDN
LDAP_ADMINUSERcn=admin,dc=quickon,dc=orgLDAP 管理员
LDAP_BINDPASSWORDpass4zenTaoLDAP Bind 密码
LDAP_USERKEYuidLDAP 用户名称的字段名
LDAP_EMAILKEYmailLDAP 用户***的字段名
LDAP_GROUP1默认用户组(1: 管理员, 2: 研发, 3: 测试, 类比)
LDAP_REALNAMEnameLDAP 用户真实姓名的字段名
LDAP_REPEATPOLICYnumberLDAP 用户重名策略,number:数字后缀,dept:部门后缀
LDAP_AUTOCREATE1LDAP 用户自动创建,1:自动创建,0:不自动创建
SMTP_ENABLEDfalse启用SMTP
SMTP_FROMNAMEZenTao $VERSIONSMTP发件人显示名称
SMTP_HOST127.0.0.1SMTP 服务主机地址
SMTP_PORT25SMTP 服务端口号
SMTP_USER***SMTP发件人***地址
SMTP_PASSpass4zenTaoSMTP发件人***密码
LINK_GITfalseDevOps模块,是否链接Git服务
GIT_TYPEgitea连接的git服务名称,目前支持 gitea/gogs/gitlab
GIT_INSTANCE_NAMEgiteaGit 服务名称
GIT_USERNAMErootGit 管理员账号名称,用于生成token
GIT_PASSWORDpass4QuickOnGit 管理员密码,用于生成token
GIT_PROTOCOLhttpsGit 服务协议类型,http或https(废弃)
GIT_DOMAIN[***]Git 服务域名(完整域名包含协议头)
GIT_TOKEN-Git Token优先级高于用户名, 默认为空
LINK_CIfalseDevOps模块,是否链接CI服务
CI_TYPEjenkins连接的ci服务名称,目前支持 jenkins
CI_USERNAMErootCI 管理员账号名称,用于生成token
CI_PASSWORDpass4QuickOnCI 管理员密码,用于生成token
CI_PROTOCOLhttpsCI 协议类型,http或https(废弃)
CI_URL[***]CI 服务域名(完整域名包含协议头)
CI_TOKEN-CI Token优先级高于用户名, 默认为空
LINK_SCANfalseDevOps模块,是否链接扫描服务
SCAN_TYPEsonarqube连接的扫描服务名称,目前支持 sonarqube
SCAN_USERNAMEadminSCAN 管理员账号名称,用于生成token
SCAN_PASSWORDpass4QuickOnSCAN 管理员密码,用于生成token
SCAN_PROTOCOLhttpsSCAN 协议类型,http或https(废弃)
SCAN_URL[***]SCAN 服务域名(完整域名包含协议头)
IS_CONTAINERtrue是否在容器内运行,zentao更新时使用

5.1 调整最大上传文件的限制

通过设置 PHP_POST_MAX_SIZE 、PHP_UPLOAD_MAX_FILESIZE 这两个环境变量的值来调整最大上传文件的限制,另外,如果考虑到用户网速的因素,建议把PHP_MAX_EXECUTION_TIME 也加大一些,这样可以保证用户的文件可以上传完成。

示例:

bash
# 运行mysql
docker run -d --rm --name mysql -e MYSQL_ROOT_PASSWORD=pass4you mysql:5.7.38-debian

# 运行禅道
docker run -d --rm --name zentao \
--link mysql \
--link redis \
-e ZT_MYSQL_HOST=mysql \
-e ZT_MYSQL_PORT=3306 \
-e ZT_MYSQL_USER=root \
-e ZT_MYSQL_PASSWORD=pass4you \
-e ZT_MYSQL_DB=zentao \
-e PHP_MAX_EXECUTION_TIME=300 \
-e PHP_POST_MAX_SIZE=512M \
-e PHP_UPLOAD_MAX_FILESIZE=512M \
-v /data/zentao:/data \
-p 8088:80 \
hub.zentao.net/app/zentao:latest
  • PHP_MAX_EXECUTION_TIME 设置为300秒
  • PHP_POST_MAX_SIZE 设置为512M
  • PHP_UPLOAD_MAX_FILESIZE 设置为 512M

六、将Session存储在Redis

禅道默认是将Session存储在共享存储中,因此多节点部署也可以满足Session共享的需求,但如果你想通过Redis来存储Session也是可以的,只需要在启动容器是传入两个参数即可:

  • PHP_SESSION_TYPE
  • PHP_SESSION_PATH

启动命令示例如下:

bash
# 运行redis
docker run -d --rm --name redis redis:3.2.12-alpine3.8

# 运行mysql
docker run -d --rm --name mysql -e MYSQL_ROOT_PASSWORD=pass4you mysql:5.7.38-debian

# 运行禅道
docker run -d --rm --name zentao \
--link mysql \
--link redis \
-e ZT_MYSQL_HOST=mysql \
-e ZT_MYSQL_PORT=3306 \
-e ZT_MYSQL_USER=root \
-e ZT_MYSQL_PASSWORD=pass4you \
-e ZT_MYSQL_DB=zentao \
-e PHP_SESSION_TYPE=redis \
-e PHP_SESSION_PATH=tcp://redis:6379 \
-v /data/zentao:/data \
-p 8088:80 \
hub.zentao.net/app/zentao:latest

指定上面两个环境变量,实际上就是修改了php.ini中关于Session的配置:

ini
session.save_handler = redis
session.save_path = "tcp://redis:6379"

注意:

  • 镜像内的脚本已经做了特殊处理,因此环境变量的值加不加引号,都不影响正常使用。
  • 示例使用了link的方式连接了mysql和redis,因此可以直接使用连接名称来连接mysql和redis。

七、运行

7.1 单机Docker-compose方式运行

bash
# 启动开源版及相关的服务
make run

# 查看服务状态
make ps

# 查看服务日志
docker-compose logs -f zentao

说明:

  • https://github.com/quicklyon/zentao-docker/blob/master/VERSION 文件中详细的定义了Makefile可以操作的版本
  • https://github.com/quicklyon/zentao-docker/blob/master/docker-compose.yml

7.2 Kubernetes通过helm命令安装开源版示例

bash
helm repo add zentao https://hub.qucheng.com/chartrepo/stable
helm repo update
helm search repo zentao/zentao
helm upgrade -i zentao-open zentao/zentao --set ingress.enabled=true --set ingress.host=zentao.example.local

高级自定义配置

bash
# 下载zentao charts
helm pull zentao/zentao --untar
# 自定义配置 zentao/values.yaml, 示例
helm upgrade -i zentao-open zentao/zentao -f custom.yaml

八、版本升级

容器镜像已为版本升级做了特殊处理,当检测数据(数据库/持久化文件)版本与镜像内运行的程序版本不一致时,会进行数据库结构的检查,并自动进行数据库升级操作。

因此,升级版本只需要更换镜像版本号即可:

修改 docker-compose.yml 文件

diff
...
  zentao:
-    image: hub.zentao.net/app/zentao:18.5
+    image: hub.zentao.net/app/zentao:18.6
    container_name: zentao
...

更新服务

bash
# 是用新版本镜像更新服务
docker-compose up -d

# 查看服务状态和镜像版本
docker-compose ps

九、其他

9.1 容器内安装软件

容器内临时安装软件,可以通过封装好的 /usr/sbin/install_packages 命令,该命令支持设置MIRROR参数,国内使用时,指定 MIRROR=true 会使用国内的加速源。实例如下:

bash
export MIRROR=true;install_packages vim

查看更多 zentao 相关镜像 →

easysoft/gitea logo

easysoft/gitea

easysoft
QuickOn Gitea应用镜像是一个自托管Git服务程序,基于Gitea构建,支持SSH/HTTP协议、用户认证、仓库管理、工单系统等功能,安装简单、跨平台运行,适用于团队或个人搭建私有代码仓库。
713 次下载
1 年前更新
easysoft/drawio logo

easysoft/drawio

easysoft
Drawio是免费开源的跨平台图形绘制软件,支持创建流程图、UML图、组织图等多种图形,可作为Web应用在线使用或桌面应用离线使用,注重数据安全且无需账户支持。
567 次下载
2 年前更新
easysoft/gogs logo

easysoft/gogs

easysoft
QuickOn打包的Gogs Docker镜像,用于快速搭建简单、轻量的自助Git服务,支持多平台部署,适合个人或团队构建私有代码仓库。
285 次下载
2 年前更新
easysoft/alist logo

easysoft/alist

easysoft
QuickOn打包的AList应用Docker镜像,支持本地存储、阿里云盘、OneDrive等多种存储,提供文件列表管理、WebDAV支持、文件预览、打包下载等功能,易于安装和跨平台使用。
236 次下载
1 年前更新

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

Docker 配置

登录仓库拉取

通过 Docker 登录认证访问私有仓库

专属域名拉取

无需登录使用专属域名

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

Harbor 镜像源配置

Harbor Proxy Repository 对接专属域名

Portainer 镜像源配置

Portainer Registries 加速拉取

Nexus 镜像源配置

Nexus3 Docker Proxy 内网缓存

系统配置

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

MacOS OrbStack

MacOS OrbStack 容器配置

Docker Compose

Docker Compose 项目配置

NAS 设备

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

极空间

极空间 NAS 系统配置服务

网络设备

爱快路由

爱快 iKuai 路由系统配置

宝塔面板

在宝塔面板一键配置镜像

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

使用与功能问题

配置了专属域名后,docker search 为什么会报错?

docker search 限制

Docker Hub 上有的镜像,为什么在轩辕镜像网站搜不到?

站内搜不到镜像

机器不能直连外网时,怎么用 docker save / load 迁镜像?

离线 save/load

docker pull 拉插件报错(plugin v1+json)怎么办?

插件要用 plugin install

WSL 里 Docker 拉镜像特别慢,怎么排查和优化?

WSL 拉取慢

轩辕镜像安全吗?如何用 digest 校验镜像没被篡改?

安全与 digest

第一次用轩辕镜像拉 Docker 镜像,要怎么登录和配置?

新手拉取配置

错误码与失败问题

docker pull 提示 manifest unknown 怎么办?

manifest unknown

docker pull 提示 no matching manifest 怎么办?

no matching manifest(架构)

镜像已拉取完成,却提示 invalid tar header 或 failed to register layer 怎么办?

invalid tar header(解压)

Docker pull 时 HTTPS / TLS 证书验证失败怎么办?

TLS 证书失败

Docker pull 时 DNS 解析超时或连不上仓库怎么办?

DNS 超时

Docker 拉取出现 410 Gone 怎么办?

410 Gone 排查

出现 402 或「流量用尽」提示怎么办?

402 与流量用尽

Docker 拉取提示 UNAUTHORIZED(401)怎么办?

401 认证失败

遇到 429 Too Many Requests(请求太频繁)怎么办?

429 限流

docker login 提示 Cannot autolaunch D-Bus,还算登录成功吗?

D-Bus 凭证提示

为什么会出现「单层超过 20GB」或 413,无法加速拉取?

413 与超大单层

账号 / 计费 / 权限

轩辕镜像免费版和专业版有什么区别?

免费版与专业版区别

轩辕镜像支持哪些 Docker 镜像仓库?

支持的镜像仓库

镜像拉取失败还会不会扣流量?

失败是否计费

麒麟 V10 / 统信 UOS 提示 KYSEC 权限不够怎么办?

KYSEC 拦截脚本

如何在轩辕镜像申请开具发票?

申请开票

怎么修改轩辕镜像的网站登录和仓库登录密码?

修改登录密码

如何注销轩辕镜像账户?要注意什么?

注销账户

配置与原理类

写了 registry-mirrors,为什么还是走官方或仍然报错?

mirrors 不生效

怎么用 docker tag 去掉镜像名里的轩辕域名前缀?

去掉域名前缀

如何拉取指定 CPU 架构的镜像(如 ARM64、AMD64)?

指定架构拉取

用轩辕镜像拉镜像时快时慢,常见原因有哪些?

拉取速度原因

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
easysoft/zentao
博客公告Docker 镜像公告与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
镜像拉取问题咨询请 提交工单,官方技术交流群:1072982923。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
镜像拉取问题咨询请提交工单,官方技术交流群:。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.