在阿里云上部署禅道(ZenTao)项目管理软件,使用2核(vCPU) 2GiB的配置是可行的,但需注意资源优化和配置调整以确保流畅运行。以下是详细步骤和注意事项:
1. 选择阿里云服务器
- 实例规格:推荐选择突发性能实例(如
t5或t6)或共享计算型(如n4),成本较低,适合轻量级应用。 - 操作系统:建议选择 CentOS 7/8 或 Ubuntu 20.04/22.04 LTS(禅道官方支持较好)。
- 安全组:开放端口
80(HTTP)、443(HTTPS),如需外部访问数据库还需开放3306(MySQL,但建议仅内网使用)。
2. 安装环境依赖
禅道基于 LAMP(Linux + Apache + MySQL + PHP)或 LNMP(Nginx替代Apache),以下以LAMP为例:
2.1 安装Apache/Nginx
# Apache(CentOS)
sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd
# 或 Nginx(Ubuntu)
sudo apt install nginx -y
sudo systemctl start nginx
2.2 安装MySQL/MariaDB
# MariaDB(兼容MySQL,更轻量)
sudo yum install mariadb-server mariadb-client -y # CentOS
sudo systemctl start mariadb
sudo mysql_secure_installation # 设置root密码并加固
# 创建禅道专用数据库(密码需复杂化)
mysql -u root -p
CREATE DATABASE zentao DEFAULT CHARSET utf8mb4;
GRANT ALL ON zentao.* TO 'zentao_user'@'localhost' IDENTIFIED BY 'YourPassword';
FLUSH PRIVILEGES;
2.3 安装PHP
禅道需要 PHP 7.2+(推荐7.4):
# CentOS
sudo yum install epel-release -y
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install php74w php74w-mysql php74w-gd php74w-mbstring php74w-ldap php74w-json -y
# Ubuntu
sudo apt install php php-mysql php-gd php-mbstring php-ldap php-json -y
3. 下载并配置禅道
3.1 下载禅道
wget https://www.zentao.net/dl/ZenTaoPMS-18.0.zip # 替换为最新版本
unzip ZenTaoPMS-*.zip -d /var/www/html/
sudo chown -R apache:apache /var/www/html/zentaopms # Apache用户
# 或 chown -R www-data:www-data /var/www/html/zentaopms # Nginx用户
3.2 配置Web服务器
- Apache:确保启用
mod_rewrite,并配置虚拟主机指向/var/www/html/zentaopms/www。 - Nginx:示例配置:
server { listen 80; server_name your-domain.com; root /var/www/html/zentaopms/www; index index.php; location / { try_files $uri $uri/ /index.php?$args; } location ~ .php$ { include fastcgi_params; fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根据PHP版本调整 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
3.3 运行安装向导
访问 http://服务器IP/ 或域名,按向导填写:
- 数据库信息:填入之前创建的
zentao数据库和用户。 - 管理员账号:设置禅道管理员密码。
4. 资源优化(关键步骤)
- PHP内存限制:编辑
/etc/php.ini,调整:memory_limit = 256M # 避免OOM错误 max_execution_time = 120 - MySQL优化:在
/etc/my.cnf中为小内存配置:[mysqld] innodb_buffer_pool_size = 128M # 关键优化项 key_buffer_size = 32M max_connections = 30 - 计划任务:禅道的定时任务需配置Cron:
crontab -u www-data -e # Nginx用户 */5 * * * * /usr/bin/php /var/www/html/zentaopms/www/cron.php > /dev/null
5. 安全加固
- HTTPS:使用Let’s Encrypt免费证书:
sudo apt install certbot python3-certbot-nginx -y # Ubuntu sudo certbot --nginx -d your-domain.com - 防火墙:仅开放必要端口:
sudo ufw allow 80,443/tcp sudo ufw enable
6. 监控与维护
- 日志检查:定期查看
/var/log/httpd/error_log(Apache)或/var/log/nginx/error.log。 - 备份:定时备份数据库和禅道代码:
mysqldump -u zentao_user -p zentao > zentao_backup.sql tar -czvf zentao_code.tar.gz /var/www/html/zentaopms
注意事项
- 资源限制:2GiB内存下,建议同时在线用户不超过20人,避免运行其他高负载服务。
- 升级禅道:定期关注官网更新,备份后升级。
- 云盘选择:系统盘建议50GB以上(阿里云默认40GB可能不足)。
如果遇到性能问题,可考虑升级到4GiB内存或使用阿里云RDS托管数据库减轻负担。
云服务器