Linux系统安装禅道的详细步骤是怎样的?

禅道是一款开源的项目管理工具,集成了产品管理、项目管理、测试管理等功能,支持多语言和多种数据库,广泛应用于软件开发团队的协作流程中,在Linux系统上安装禅道可以通过多种方式实现,本文将详细介绍Docker安装、源码包安装两种主流方法,并附上安装前后的注意事项及常见问题解答。

如何在linux安装禅道

安装前准备

在开始安装前,需确保系统满足禅道的基本运行要求,包括硬件配置、操作系统版本及依赖环境,以下是具体准备事项:

系统要求

禅道对硬件配置的要求不高,但为保证流畅运行,建议按以下标准配置:
| 组件 | 最低配置 | 推荐配置 |
|————|—————-|—————-|
| CPU | 1核 | 2核及以上 |
| 内存 | 2GB | 4GB及以上 |
| 磁盘空间 | 10GB可用空间 | 20GB及以上 |
| 操作系统 | Ubuntu 18.04+/CentOS 7+/Debian 9+ | Ubuntu 20.04+/CentOS 8+ |

依赖环境

禅道基于PHP开发,需依赖PHP环境、数据库及Web服务器,具体版本要求如下:

  • PHP:7.4-8.1(需开启mysqli、gd、curl、mbstring、xml、zip、fileinfo等扩展)
  • 数据库:MySQL 5.7+/MariaDB 10.2+ 或 PostgreSQL 10+
  • Web服务器:Nginx 1.18+ 或 Apache 2.4+

以Ubuntu系统为例,安装依赖环境的命令如下(CentOS系统需将apt替换为yum):

# 更新软件包列表  
sudo apt update  
# 安装PHP及扩展  
sudo apt install php7.4-fpm php7.4-mysql php7.4-gd php7.4-curl php7.4-mbstring php7.4-xml php7.4-zip php7.4-fileinfo  
# 安装MySQL数据库  
sudo apt install mysql-server  
# 安装Nginx  
sudo apt install nginx  

安装方法

Docker安装(推荐新手)

Docker通过容器化部署,可快速隔离环境,避免依赖冲突,适合快速上手。

安装Docker

若未安装Docker,先执行以下命令(以Ubuntu为例):

# 安装Docker依赖  
sudo apt install apt-transport-https ca-certificates curl software-properties-common  
# 添加Docker官方GPG密钥  
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -  
# 添加Docker仓库  
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"  
# 安装Docker  
sudo apt update  
sudo apt install docker-ce  
# 启动Docker服务并设置开机自启  
sudo systemctl start docker  
sudo systemctl enable docker  

拉取并运行禅道镜像

# 拉取禅道开源版镜像(最新版本)  
docker getzentao/zentao  
# 运行容器(映射端口8080,数据挂载到宿主机/data/zentao)  
docker run -d --name zentao -p 8080:80 -v /data/zentao:/data/zentao/data getzentao/zentao  

参数说明:

如何在linux安装禅道

  • -d:后台运行容器
  • --name zentao:容器命名为zentao
  • -p 8080:80:将宿主机8080端口映射到容器80端口
  • -v /data/zentao:/data/zentao/data:将容器内的数据目录挂载到宿主机,实现数据持久化

访问禅道

打开浏览器,输入http://服务器IP:8080,进入禅道初始化配置页面,按提示设置管理员账号、数据库连接信息(默认使用容器内置SQLite数据库,若需使用外部MySQL,需在容器运行时通过环境变量配置)。

源码包安装(适合自定义配置)

源码包安装可灵活调整配置,适合需要深度定制或学习部署原理的用户。

下载禅道源码

从禅道官方官网下载最新开源版源码包(以0版本为例):

# 下载源码包(wget需提前安装)  
wget https://www.zentao.net/dl/zentao/10.0/ZenTaoPMS.10.0.stable.zip  
# 解压到Web目录(如/var/www/html/zentao)  
sudo unzip ZenTaoPMS.10.0.stable.zip -d /var/www/html/  
sudo mv /var/www/html/ZenTaoPMS.10.0.stable /var/www/html/zentao  

配置数据库

# 登录MySQL  
sudo mysql -u root -p  
# 创建禅道数据库(字符集需为utf8mb4)  
CREATE DATABASE zentao DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;  
# 创建数据库用户并授权(用户名:zentao_user,密码:your_password)  
GRANT ALL PRIVILEGES ON zentao.* TO 'zentao_user'@'localhost' IDENTIFIED BY 'your_password';  
FLUSH PRIVILEGES;  
EXIT;  

配置Web服务器

以Nginx为例,创建配置文件/etc/nginx/sites-available/zentao

server {  
    listen 80;  
    server_name 服务器IP;  # 替换为实际IP或域名  
    root /var/www/html/zentao;  
    index index.php index.html;  
    location / {  
        try_files $uri $uri/ /index.php?$query_string;  
    }  
    location ~ .php$ {  
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  # 根据实际PHP版本调整  
        fastcgi_index index.php;  
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  
        include fastcgi_params;  
    }  
    location ~ /.ht {  
        deny all;  
    }  
}  

启用配置并重启Nginx:

# 启用站点配置  
sudo ln -s /etc/nginx/sites-available/zentao /etc/nginx/sites-enabled/  
# 测试Nginx配置  
sudo nginx -t  
# 重启Nginx  
sudo systemctl restart nginx  

设置目录权限

# 设置Web服务器用户(Ubuntu为www-data,CentOS为apache)对禅道目录的读写权限  
sudo chown -R www-data:www-data /var/www/html/zentao  
sudo chmod -R 755 /var/www/html/zentao  

完成安装

访问http://服务器IP/zentao,进入初始化页面,选择“全新安装”,填写数据库信息(数据库名:zentao,用户名:zentao_user,密码:your_password),按提示完成安装。

安装后配置

  1. 修改配置文件:禅道核心配置文件为config.php(位于/var/www/html/zentao/config//data/zentao/config/),可修改数据库连接、缓存方式、时区等参数。
  2. 数据备份:定期备份数据库和禅道目录,避免数据丢失。
  3. 开启HTTPS:若需通过HTTPS访问,可配置Let’s Encrypt免费证书,修改Nginx/Apache配置文件中的监听端口为443,并添加证书路径。

相关问答FAQs

Q1:安装时提示“PHP扩展xxx未安装”怎么办?
A1:根据提示的扩展名称,使用包管理器安装对应扩展,例如Ubuntu系统安装fileinfo扩展:

如何在linux安装禅道

sudo apt install php7.4-fileinfo  

安装完成后,重启PHP-FPM和Web服务器:

sudo systemctl restart php7.4-fpm  
sudo systemctl restart nginx  

若CentOS系统,需将apt替换为yum,扩展名前加php74-(如php74-fileinfo)。

Q2:禅道无法上传附件,提示“目录不可写”如何解决?
A2:通常是附件目录权限不足导致,禅道附件默认存储在www/data目录(源码包安装路径为/var/www/html/zentao/www/data,Docker安装路径为/data/zentao/data),需确保Web服务器用户(如www-data)对该目录有读写权限:

# 源码包安装  
sudo chown -R www-data:www-data /var/www/html/zentao/www/data  
sudo chmod -R 755 /var/www/html/zentao/www/data  
# Docker安装  
sudo docker exec -it zentao chown -R www-data:www-data /data/zentao/data  

若仍报错,可尝试直接设置目录权限为777(仅临时调试,生产环境不推荐):

sudo chmod -R 777 /var/www/html/zentao/www/data  

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/34353.html

(0)
酷番叔酷番叔
上一篇 2025年10月2日 09:29
下一篇 2025年10月2日 09:55

相关推荐

  • Linux下Oracle用户登录的具体操作方法是什么?

    在Linux操作系统下登录Oracle数据库用户,需结合Oracle数据库的认证机制与Linux系统环境,常见登录方式包括本地登录、远程登录及通过图形化工具登录,不同场景下操作步骤和注意事项有所差异,以下是详细说明:本地登录:通过Linux系统用户直接访问Oracle本地登录依赖Oracle的操作系统认证机制……

    2025年8月24日
    12300
  • Linux如何快速返回上级目录?

    在Linux命令行中,通过cd ..命令可快速返回上级目录,连续使用或结合路径(如cd ../..)能高效导航至更高级目录,是文件系统操作的基础技能。

    2025年6月21日
    16500
  • 如何轻松掌握命令行工具核心技巧?

    在Linux系统中,覆盖目录指用新目录内容完全替换目标目录的现有内容,常用于更新文件、部署代码或同步数据,以下是详细操作方法和注意事项,结合E-A-T原则(专业性、权威性、可信度)提供可靠指导,引用官方文档和社区资源确保准确性,cp 命令(复制覆盖)作用:递归复制源目录内容到目标目录,覆盖同名文件,命令示例……

    2025年7月28日
    17600
  • Windows如何引导Linux?双系统启动引导步骤详解

    在Windows系统中引导Linux系统,通常是通过双系统配置实现的,核心思路是在保留Windows系统的同时安装Linux,并利用引导加载程序(如GRUB)实现系统选择,以下是详细步骤和注意事项,涵盖准备工作、安装流程、引导配置及问题排查,准备工作在安装Linux前,需做好充分准备,避免安装过程中数据丢失或引……

    2025年10月5日
    12100
  • Linux如何安全删除文件夹?

    命令行删除(推荐方法)Linux通过终端命令高效管理文件,主要使用 rm 和 rmdir 命令,使用 rm 命令(删除非空文件夹)rm(remove)是删除文件和文件夹的核心工具,配合参数可处理嵌套内容:rm -r 文件夹名称-r(或 –recursive):递归删除文件夹及其内部所有子文件和子目录,-f(强……

    2025年7月18日
    17700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信