1. 安装禅道
2. 禅道介绍
3. 升级禅道
4. 维护配置

使用禅道Docker安装包安装

2019-01-09 16:35:09
薛才杰
46869
最后编辑:王怡栋 于 2020-10-14 09:44:24
分享链接


一、下载地址

禅道开源版:     /dl/zentao/docker/docker_zentao.zip

数据库用户名:  root,默认密码:  123456。运行时,可以设置  MYSQL_ROOT_PASSWORD变量来更改密码。

可挂载目录

/app/zentaopms:该目录为禅道目录,里面包含禅道代码及附件上传目录。

/var/lib/mysql:该目录为数据库的数据目录。

二、安装使用

注意:需要关闭下selinux

1、构建镜像

下载安装包,解压缩。 进入docker_zentao目录,执行命令 docker build -t [镜像名称] [Dockerfile所在目录]

docker build -t zentao ./

2、运行镜像

docker run --name [容器名称] -p [主机端口]:80 -v [主机代码目录]:/app/zentaopms -v [主机数据目录]:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=[数据库密码] -d [镜像名]:latest

例如

创建 /data/www /data/data 目录。

执行命令:

docker run --name zentao -p 80:80 -v /data/www:/app/zentaopms -v /data/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d zentao:latest

运行成功

3、安装禅道

通过浏览器访问http://ip,系统会自动转入安装程序。

使用产品须遵循我们的授权协议,不得擅自去除标志、链接。

检查系统安装环境,如软件版本、读写权限等。如有错误按提示操作即可。

填写数据库相关信息,如数据库已存在,可勾选清空现有数据。

生成配置文件my.php,管理员可自行修改设置,想重装系统则删除该文件即可。

设置管理员帐号和工作方式。


三、升级

1、重新构建镜像

重新修改Dockerfile,重新运行构建镜像命令

docker build -t zentao ./

2、关闭容器

docker stop 容器ID

docker stop 6b26b184f322

3、用新镜像运行容器

用之前运行镜像的命令,用新的镜像重新运行容器。

注意:[主机代码目录]、[主机数据目录]、mysql密码 必须和之前的容器一致。

4、升级禅道

在 [主机代码目录] 的 www 目录创建 ok.txt。

创建后,点击 继续更新。

升级成功。

四、访问禅道数据库

1、安装成功之后,确认下容器的ID:

2、进入docker容器:

执行下面命令,ID使用上面查询的ID即可。

docker exec -it cc8f97cdf51b /bin/bash

结果:

3、访问数据库:

密码默认是123456,但是运行镜像的时候  MYSQL_ROOT_PASSWORD修改密码的话,需要使用修改后的密码。


评论列表
路路 2021-05-25 09:11:42
我不懂代码,操作不了,没有简洁点的说明吗
于涛 2021-05-25 09:49:22 回复
您好,我们官方有已经打包好的Docker镜像的,可以直接拉取镜像启动容器运行即可,具体操作方法可以参考https://www.zentao.net/book/zentaopmshelp/405.html
雨中漫步 2020-02-07 11:13:06
https://www.zentao.net/book/zentaopmshelp/303.html我按照此教程用docker在服务器上部署了禅道。但是我现在想通过PC机上的数据库管理软件如heidsql远程访问mysql数据库,但是一直报10060错误(数据库连接不上)。docker启动的时候已经指定了3306:3306的端口映射;而且已经给远程PC机的IP授权。请教下各位大神:应该如何解决这个问题?
王林 2020-02-07 13:12:40 回复
1、在宿主机通过命令行访问下mysql看下是否可以访问到
2、宿主机可以正常访问的话
a、检查下pc端到宿主机的网络端口是不是通的,可以telnet测试下
b、看下mysql中的root用户是否没有异机访问权限,添加下异机访问的root用户,可以看下这个文档:http://www.zentao.net/book/zentaopmshelp/276.html
另外,这个文档应该暂停更新了,建议直接在宿主机进行安装禅道就可以了
林志强 2019-12-30 18:45:28
通过linux一键安装包直接在服务器安装这种已经测试可以,但是我们主要还是想通过docker方式部署,因为同一个服务器还跑其它的WEB服务器及数据库,可能会有冲突
张玉洁 2019-12-31 09:09:24 回复
安装一键安装包后,服务器还可以正常安装数据库和apache服务的,只有避开已经使用的端口号即可。
linux 一键安装包更换端口号命令:
/opt/zbox/zbox stop
/opt/zbox/zbox -ap 82
/opt/zbox/zbox start
ap是apache服务端口,mp是mysql服务端口号,根据需要变更。
林志强 2019-12-30 14:29:10
在“重新构建镜像”这步,修改了$random字符串,重新执行docker build -t zentao ./ 在下载包时老是出错:
curl: (6) Could not resolve host: cdn.zentaopm.com
The command '/bin/sh -c random=`date +%s`; curl http://cdn.zentaopm.com/latest/zentao.zip?rand=10 -o /var/www/zentao.zip' returned a non-zero code: 6
但是如果在shell环境手动输入curl http://cdn.zentaopm.com/latest/zentao.zip?rand=10 -o /var/www/zentao.zip 又可以成功下载。
王林 2019-12-30 17:47:35 回复
可以试下通过linux一键安装包直接在服务器安装试一下,操作也比较简单的。
bing_huang 2019-11-18 15:45:42
官方docker已经有两个月没有更新了,请注意
禅道-Bee 2019-11-18 16:32:26 回复
基础的Dockerfile已经有了,而且构建脚本中也有使用最新禅道版本的下载地址;另外,我们也单独测试过,单机使用docker部署禅道,性能消耗还是比较大的。单机环境,还是推荐直接部署再服务器上。
sange 2019-10-08 10:28:01
docker build -t zentao ./执行后有报错这个,,镜像中mysql目录不是空的呢??

---> Running in b2bcfe6bf87f
rm: cannot remove '/var/lib/mysql/mysql': Directory not empty
rm: cannot remove '/var/lib/mysql/performance_schema': Directory not empty
The command '/bin/sh -c rm -rf /etc/apache2/sites-enabled/000-default.conf /var/lib/mysql/*' returned a non-zero code: 1
禅道-Bee 2019-10-08 17:25:31 回复
可以联系官网顶部的商务QQ,邀请加入禅道技术交流群,群里一起确认下,方便截图。
Song 2020-05-07 16:56:57 回复
最后的解决方法:docker build --network=host -t zentao ./

当然如果使用自带的数据源执行apt-get 慢,记得在dockerfile 文件中因此在apt-get update 之前加入ADD sources.list /etc/apt/ ( sources.list 在宿主机中生成,使用阿里云的镜像)
hsowan 2019-10-01 22:42:08
为什么不提供官方镜像呢,还要自行构建
石洋洋 2019-10-08 09:40:00 回复
docker用于正式环境的开销比较大,系统资源消耗比较多,目前使用的公司比较少,所以不是每个版本都会制作docker包,可以基于贵公司当前的操作环境自己构建一下。
tewu 2019-09-26 16:42:19
docker run --name zentao -p 80:80 -v /data/www:/app/zentaopms -v /data/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d zentao:latest 提示: not a file or directory, 已经创建好挂载文件夹。
然后尝试去掉挂载文件夹提示:
docker run --name zentao -p 80:80 -e MYSQL_ROOT_PASSWORD=123456 -d zentao:latest: command not found
禅道-Bee 2019-09-26 17:44:01 回复
联系下官网顶部的商务QQ,邀请加入技术交流群,群里沟通下。
Billy Yang 2019-09-24 11:06:14
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

重启服务器,把所有的Docker缓存删了,重新build,然后启动的时候,总是报连不上数据库,这是啥情况哦?
Billy Yang 2019-09-24 11:07:43 回复
mysql 密码用的是123456 默认的没有改。

docker exec -it zentao bash
进去后 mysql -u root -p ,输入123456 是可以进入mysql的
马超 2019-09-24 13:43:18 回复
可以看下zentao(pms)/config/my.php文件中的数据库密码是123456吗?如果不是,可以将password修改为123456,然后重新访问禅道看下
马超 2019-09-24 13:51:43 回复
已经回复过了
张先生 2020-12-23 11:29:06 回复
你好,我这边也是查看 docker logs 报这个错误. 但是禅道本身能正常使用,不知道有影响不,你的问题解决了吗?
张玉洁 2020-12-23 13:21:36 回复
这个网页是旧的docker安装文档,目前禅道更新了docker安装方式,可以参考新的手册看一下:https://www.zentao.net/book/zentaopmshelp/405.html
yonyong 2019-09-12 14:58:35
请问docker安装禅道后,内置的mysql映射到宿主机的端口默认是3306么,3306:3306?
石洋洋 2019-09-12 16:56:27 回复
可以在执行 docker run 的时候指定一下 3306端口映射。
1/4 1 2 3 4
发表评论
评论通过审核后显示。