禅道开源版 20.4 Docker 安装与恢复指南
禅道开源版 20.4 Docker 安装与恢复指南
环境要求
Docker 已安装
至少 2GB 可用内存
至少 10GB 可用磁盘空间
安装步骤
1. 下载镜像
下载禅道 20.4 版本的 Docker 镜像:
docker pull hub.zentao.net/app/zentao:20.4
2. 创建网络
创建一个专用网络用于禅道容器(使用标准私有网段):
docker network create --subnet=172.18.0.0/24 zentaonet
3. 创建数据目录
创建用于持久化存储的数据目录:
mkdir -p /data/zentao/data
4. 运行容器
使用以下命令启动禅道容器:
docker run \
--name zentao \
-p 5244:80 \
--network=zentaonet \
--ip 172.18.0.10 \
-e MYSQL_INTERNAL=true \
-v /data/zentao/data:/data \
-d hub.zentao.net/app/zentao:20.4
或者使用单行命令:
docker run --name zentao -p 5244:80 --network=zentaonet --ip 172.18.0.10 -e MYSQL_INTERNAL=true -v /data/zentao/data:/data -d hub.zentao.net/app/zentao:20.4
5. 设置目录权限
为确保禅道能够正常读写数据目录,设置适当的权限:
chmod 777 -R /data/zentao/
从本地备份镜像恢复
如果您有之前备份的 Docker 镜像文件(.tar 格式),可以按照以下步骤恢复:
1. 传输镜像文件
将备份的镜像文件(如 zentao-20.4-backup.tar)上传到目标服务器。
2. 加载镜像
docker load -i zentao-20.4-backup.tar
3. 验证镜像
检查镜像是否已成功加载:
docker images
4. 创建网络(如果不存在)
docker network create --subnet=172.18.0.0/24 zentaonet
5. 恢复数据目录(如果有备份)
如果有数据备份,先恢复数据
tar -xzf zentao-data-backup.tar.gz -C /data/zentao/
chmod 777 -R /data/zentao/data
6. 运行容器
使用加载的镜像运行容器:
docker run \
--name zentao \
-p 5244:80 \
--network=zentaonet \
--ip 172.18.0.10 \
-e MYSQL_INTERNAL=true \
-v /data/zentao/data:/data \
-d [您的镜像名称或ID]
关于网络地址的说明
标准的私有IP地址范围是:
10.0.0.0/8 (10.0.0.0 - 10.255.255.255)
172.16.0.0/12 (172.16.0.0 - 172.31.255.255)
192.168.0.0/16 (192.168.0.0 - 192.168.255.255)
使用非标准私有地址(如 172.172.172.173)可能会造成以下影响:
潜在冲突:如果您的网络环境中已经有使用这个网段的设备,可能会造成IP地址冲突
路由问题:某些网络设备可能会将此类非标准私有地址路由到公网
连接问题:如果您需要从外部访问容器,可能会遇到网络连接问题
建议:使用标准的私有IP地址范围,如 172.18.0.0/16 或 192.168.0.0/16 网段。
参数说明
容器名:--name zentao - 启动的容器名字,可随意指定
主机端口:-p 5244:80 - 主机端口为 Web 访问端口
网络驱动名:--network=zentaonet - 上文创建的网络驱动名
容器IP:--ip 172.18.0.10 - 在网络驱动范围内选择一个作为该容器的固定 IP
数据卷挂载:-v /data/zentao/data:/data - 主机禅道目录,必须指定,方便附件等数据的持久化
环境变量:-e MYSQL_INTERNAL=true - 启用容器内置 MySQL,默认用户名为 root,密码是 123456
镜像标签:hub.zentao.net/app/zentao:20.4 - 禅道 20.4 版本
访问禅道
容器启动后,通过以下地址访问禅道:
http://你的服务器IP:5244
首次访问时会进入安装向导,按照提示完成安装即可。
升级禅道
1. 停止容器
停止禅道容器
docker stop zentao
删除容器
docker rm zentao
2. 备份数据
cp -rp /data/zentao/data /data/zentao/data_bak/zentao_bak_`date +%Y%m%d`
3. 下载新版本镜像
docker pull hub.zentao.net/app/zentao:20.5 # 或您想要升级到的版本
4. 重新运行容器
使用新版本的镜像重新运行容器(注意修改版本号):
docker run --name zentao -p 5244:80 --network=zentaonet --ip 172.18.0.10 -e MYSQL_INTERNAL=true -v /data/zentao/data:/data -d hub.zentao.net/app/zentao:20.5
注意事项
确保 /data/zentao/data 目录有足够的磁盘空间
定期备份 /data/zentao/data 目录中的重要数据
生产环境建议使用外部 MySQL 数据库而非内置数据库
如需修改默认端口,请相应调整防火墙设置
建议使用标准私有IP地址范围,避免网络冲突
本指南不包含 LDAP 服务集成,仅包含禅道核心功能
故障排除
如果遇到访问问题,可以查看容器日志:
docker logs zentao
如需进入容器进行调试:
docker exec -it zentao bash
数据备份与迁移
定期备份数据
创建备份目录
mkdir -p /data/zentao/backups
备份数据目录
tar -czf /data/zentao/backups/zentao-data-$(date +%Y%m%d).tar.gz -C /data/zentao/data .
备份镜像
docker save -o /data/zentao/backups/zentao-image-$(date +%Y%m%d).tar hub.zentao.net/app/zentao:20.4
迁移到新服务器
将备份的数据和镜像文件复制到新服务器
按照"从本地备份镜像恢复"部分的步骤操作
恢复数据目录:
mkdir -p /data/zentao/data
tar -xzf zentao-data-backup.tar.gz -C /data/zentao/data
chmod 777 -R /data/zentao/data
本文档适用于禅道开源版 20.4 的 Docker 安装与恢复,不包含 LDAP 服务集成,仅提供禅道核心功能。

浙公网安备 33010602011771号