LAMP环境下部署项目管理软件--禅道
禅道与Jira的对比
禅道最大的特色是创造性的将产品、项目、测试这三者的概念明确分开,互相配合,又互相制约。通过需求、任务、bug来进行交相互动,最终通过项目拿到合格的产品。
Jira设计以项目为主线,产品、测试结合管理,通过issues控制管理。因此它的核心诉求还是围绕issue展开的,以issue驱动管理、分工、以及团队协作,进而实现项目的规划、建设,终完成产品开发。
# 禅道功能
1)产品管理:产品、需求、计划、发布、路线图等功能。
2)项目管理:项目、任务、团队、build、燃尽图等功能。
3)质量管理:bug、测试用例、测试任务、测试结果等功能。
4)文档管理:产品文档库、项目文档库、自定义文档库等功能。
5)事务管理:todo管理,我的任务、我的Bug、我的需求、我的项目等个人事务管理功能。
6)组织管理:部门、用户、分组、权限等功能。
7)统计功能:丰富的统计表。
8)搜索功能:通过搜索找到相应的数据。
# Jira功能
1)问题追踪和管理(问题类型包括New Feature-新功能、Bug-缺陷、Task-任务、 Improvement-改进 四种);
2)问题跟进情况的分析报告;
3)项目类别管理功能;
4)组件/模块负责人功能;
5)项目email地址功能;
6)无限制的工作流。
# 禅道的优点:
1)禅道开源免费,从下载到使用不需任何费用。开源的软件更能够根据企业自身需求在源码的基础上进行修改,让国内外众多企业节省项目管理成本。
2)禅道的功能非常完备,可扩展性,且代码开放可做二次开发。
3)禅道价格实惠,售后服务方式选择多且有官方技术服务的保障。
# 禅道的缺点:
1)禅道的界面设计稍稍逊色,不够简洁,颜色使用也比较单一,不够丰富。
2)虽然禅道有新手入门操作演示,但部分新人上手还是会存在一些问题。
# Jira的优点:
1)Jira的界面效果非常不错。安全性、可扩展性方面也不错。 Jira的使用范围广,所以拥有众多开发者提供的扩展插件以供不同选择。
2)单独提一下Jira的工作流定制,这块功能实用性特别高,可定制性也很好。
3)Jira针对issue驱动的项目管理非常有效,也基于多年来的插件积累,可以展现非常强大的交互、统计视图,纯粹项目管理使用Jira的确是个不错选择。
# Jira的缺点:
1)Jira从使用上来说还是不大符合国人的使用逻辑。
2)Jira虽然有中文版本,但是中文版本在使用的过程中,部分页面还是会有很多英文,不能做到全中文界面。
3)Jira对于国内用户提供的售后服务稍显弱一些,存在时间和沟通上的一些障碍。
环境准备
| IP | HOSTNAME | SYSTEM |
|---|---|---|
| 192.168.131.129 | zentao | CentOS 7.6 |
# 后面有编写好的脚本,自己注意修改mariadb的root密码
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@localhost ~]# sestatus
SELinux status: disabled
[root@localhost ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@localhost ~]# hostnamectl --static set-hostname zentao
安装httpd
[root@zentao ~]# yum -y install httpd
[root@zentao ~]# rpm -qa | grep httpd
httpd-2.4.6-93.el7.centos.x86_64
httpd-tools-2.4.6-93.el7.centos.x86_64
[root@zentao ~]# systemctl enable httpd --now
安装php 7.2
# 下载php 7.2 yum源
[root@zentao ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
[root@zentao ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# yum 安装 php 7.2 所需组件
[root@zentao ~]# yum -y install php72w php72w-pdo php72w-mysql php72w-mbstring php72w-ldap php72w-gd php72w-json php72w-xml
[root@zentao ~]# vim /var/www/html/index.php
<?php
phpinfo();
?>
[root@zentao ~]# systemctl restart httpd # 重启httpd服务后,php页面才可以正常访问
# 浏览器访问 http://192.168.131.129/index.php 查看到php信息页面即可
安装mariadb
[root@zentao ~]# yum -y install mariadb mariadb-server
[root@zentao ~]# rpm -qa | grep mariadb
mariadb-5.5.65-1.el7.x86_64
mariadb-server-5.5.65-1.el7.x86_64
mariadb-libs-5.5.65-1.el7.x86_64
[root@zentao ~]# systemctl enable mariadb.service --now
数据库初始化
[root@zentao ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none): # 初次安装的,直接回车即可
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y # 是否设置mariadb的root用户的密码
New password:
Re-enter new password: # 确认密码
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y # 是否删除匿名用户
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] n # 是否禁止root远程登录
... skipping.
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y # 是否删除test数据库
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y # 是否立即重新加载权限表
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
安装禅道
[root@zentao ~]# wget https://www.zentao.net/dl/ZenTaoPMS.12.4.1.zip
[root@zentao ~]# yum -y install unzip
[root@zentao ~]# unzip ZenTaoPMS.12.4.1.zip -d /var/www/html/
[root@zentao ~]# cp /etc/httpd/conf/httpd.conf{,.bak} # 美好的一切,从备份配置文件开始
[root@zentao ~]# vim /etc/httpd/conf/httpd.conf
119 DocumentRoot "/var/www/html/zentaopms/www" `修改路径
120
121 #
122 # Relax access to content within /var/www.
123 #
124 <Directory "/var/www">
125 AllowOverride None
126 # Allow open access:
127 Require all granted
128 </Directory>
129
130 # Further relax access to the default document root:
131 <Directory "/var/www/html/zentaopms/www"> `修改路径
132 #
133 # Possible values for the Options directive are "None", "All",
134 # or any combination of:
135 # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
136 #
137 # Note that "MultiViews" must be named *explicitly* --- "Options All"
138 # doesn't give it to you.
139 #
140 # The Options directive is both complicated and important. Please see
141 # http://httpd.apache.org/docs/2.4/mod/core.html#options
142 # for more information.
143 #
144 Options Indexes FollowSymLinks
145
146 #
147 # AllowOverride controls what directives may be placed in .htaccess files.
148 # It can be "All", "None", or any combination of the keywords:
149 # Options FileInfo AuthConfig Limit
150 #
151 AllowOverride All `None改成All
152
153 #
154 # Controls who can get stuff from this server.
155 #
156 Require all granted
157 </Directory>
[root@zentao ~]# systemctl restart httpd
# 浏览器访问 http://http://192.168.131.129/ 开始安装禅道
脚本部署
#!/bin/bash
# From Bandian
# This project is used to deploy Zentao
# Date: 2020-08-14
# Httpd version: 2.4.6
# PHP version: 7.2
# Mariadb version: 5.5.65
# Zentao version: 12.4.1
# 检查网络
checkNetwork() {
ping -c1 www.baidu.com > /dev/null 2>&1
if [ $? -ne 0 ]
then
echo "Check your network !"
exit
else
echo "Waiting for check system "
fi
}
checkNetwork
# 关闭selinux和防火墙
checkSystem() {
hostnamectl --static set-hostname zentao
systemctl disable firewalld --now
setenforce 0
# if [ $? -ne 0 ]
# then
# echo "Check your firewalld and selinux !"
# exit 1
# else
# echo "Waiting for install httpd"
# fi
}
checkSystem
# 安装httpd
installHttpd() {
yum -y install httpd > /dev/null 2>&1
if [ $? -eq 0 ]
then
echo "Httpd install successful"
else
echo "Httpd install failed !"
fi
systemctl enable httpd --now
if [ $? -eq 0 ]
then
echo "Httpd start succes"
echo "Waiting fo install php"
else
echo "Httpd start failed !"
exit 2
fi
}
installHttpd
# 安装php
installPhp() {
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y install php72w php72w-pdo php72w-mysql php72w-mbstring php72w-ldap php72w-gd php72w-json php72w-xml /dev/null 2>&1
if [ $? -eq 0 ]
then
echo "PHP install successful"
echo "Waiting for install mariadb"
else
echo "PHP install failed !"
exit 3
fi
}
installPhp
# 安装mariadb
installMariadb() {
yum -y install mariadb mariadb-server /dev/null 2>&1
if [ $? -eq 0 ]
then
echo "Mariadb install successful"
else
echo "Mariadb install failed !"
exit 4
fi
systemctl enable mariadb.service --now
if [ $? -eq 0 ]
then
echo "Mariadb start success"
echo "Waiting init mariadb"
else
echo "Mariadb start failed !"
exit 4
fi
}
installMariadb
# 初始化mariadb
initMariadb() {
yum -y install expect > /dev/null 2>&1
expect -c "
spawn mysql_secure_installation
expect {
\"*enter for none*\" {send \"\r\"; exp_continue}
\"*Y/n*\" {send \"y\r\"; exp_continue}
\"*password*\" {send \"123.com\r\"; exp_continue}
\"*password*\" {send \"123.com\r\"; exp_continue}
\"*Y/n*\" {send \"y\r\"; exp_continue}
\"*Y/n*\" {send \"n\r\"; exp_continue}
\"*Y/n*\" {send \"y\r\"; exp_continue}
\"*Y/n*\" {send \"y\r\";}
}"
if [ $? -eq 0 ]
then
echo "Mariadb init successful"
echo "Waiting install zentao"
else
echo "Mariadb init failed"
exit 5
fi
}
initMariadb
# 安装禅道
installZentao() {
wget https://www.zentao.net/dl/ZenTaoPMS.12.4.1.zip
yum -y install unzip
if [ $? -eq 0 ]
then
echo "Download zentao success"
else
echo "Download zentao failed !"
exit 6
fi
unzip ZenTaoPMS.12.4.1.zip -d /var/www/html/
cp /etc/httpd/conf/httpd.conf{,.bak}
sed -i '119{s/var.*/var\/www\/html\/zentaopms\/www"/}' /etc/httpd/conf/httpd.conf
sed -i '131{s/var.*/var\/www\/html\/zentaopms\/www">/}' /etc/httpd/conf/httpd.conf
sed -i '151{s/None/All/}' /etc/httpd/conf/httpd.conf
systemctl restart httpd
if [ $? -eq 0 ]
then
echo "Httpd restarted success"
else
echo "Httpd restart failed !"
exit 7
fi
}
installZentao
LAMP环境下部署项目管理软件--禅道的更多相关文章
- Linux环境下部署开源版“禅道”方法
1.开源版安装包下载(Linux系统版本查看命令 uname -a) 32位 [root@iZbp~]# wget http://dl.cnezsoft.com/zentao/9.0.1/ZenTao ...
- 【简书】在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目
在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目 作者 DonnieZero 关注 2017.07.29 22:02* 字数 2218 阅读 5556评论 3喜欢 1赞赏 1 ...
- Linux下部署开源版“禅道”项目管理系统《转载》
Linux下部署开源版“禅道”项目管理系统 https://www.cnblogs.com/xxsl/p/6525378.html
- Linux下部署开源版“禅道”项目管理系统
1.开源版安装包下载 [root@iZbp ~]# wget http://dl.cnezsoft.com/zentao/9.0.1/ZenTaoPMS.9.0.1.zbox_64.tar.gz 2. ...
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- win7 IIS7环境下部署PHP 7.0
最近在本机电脑win7 II7环境下部署PHP 7.0遇到一些问题,将之记录下来 简要步骤如下: 1.到php官网下载php,由于是IIS环境要下载非线程安全的版本,我下载的是7.0.13 2.解压到 ...
- Vmware ESX5i 环境下部署Windows Storage Server 2008 R2
ESX5i 环境下部署Windows Storage Server 2008 R2 Windows Storage Server 2008 这款产品微软早已发布,WSS2008是基于Win ...
- 有了SSL证书,如何在IIS环境下部署https?【转载】
昨天各位小伙伴都很开心的领取了自己的SSL证书,但是大部分小伙伴却不知道如何部署,也许是因为第一次接触SSL这种高端的东西吧,不过个人觉得就是懒懒懒...本来小编也挺懒的,但是答应了各位小伙伴的,那么 ...
- Django Windows环境下部署
环境准备 本文将介绍如何在Windows系统上部署Django web项目,本次部署基于下面的架构: Windows10 64位+Python3.6+Django1.11+Apache2.4+mod_ ...
随机推荐
- Vue养成之路
目录 Vue系列教程(一)之初识Vue Vue系列教程(二)之Vue进阶 Vue系列继承(三)之Vue-cli脚手架的使用 ... 更新中 基础入门 Vue基础(一)之es6 Vue基础(二)之箭头函 ...
- Educational Codeforces Round 117 (Rated for Div. 2)
Educational Codeforces Round 117 (Rated for Div. 2) A. Distance https://codeforces.com/contest/1612/ ...
- 从内存管理原理,窥探OS内存管理机制
摘要:本文将从最简单的内存管理原理说起,带大家一起窥探OS的内存管理机制,由此熟悉底层的内存管理机制,写出高效的应用程序. 本文分享自华为云社区<探索OS的内存管理原理>,作者:元闰子 . ...
- POJ 3617 Best Cow Line (字典序最小问题 & 贪心)
原题链接:http://poj.org/problem?id=3617 问题梗概:给定长度为 的字符串 , 要构造一个长度为 的字符串 .起初, 是一个空串,随后反复进行下列任意操作. 从 的头部删除 ...
- react中引入图片路劲正确但是页面上不显示或者打包后不能正常显示的问题
一.react中图片引入方式 以前我们用img引入图片只需要如下即可,在react中这样写会报错: <img src="../assets/zzsc1.png" /> ...
- 《剑指offer》面试题05. 替换空格
问题描述 请实现一个函数,把字符串 s 中的每个空格替换成"%20". 示例 1: 输入:s = "We are happy." 输出:"We%20a ...
- leetcode 718. 最长重复子数组
问题描述 给两个整数数组 A 和 B ,返回两个数组中公共的.长度最长的子数组的长度. 示例: 输入: A: [1,2,3,2,1] B: [3,2,1,4,7] 输出:3 解释: 长度最长的公共子数 ...
- 微服务探索之路02篇liunx ubuntu服务器部署k8s(kubernetes)-kubernetes/dashboard
本章介绍所需环境:ubuntu18.04,建立在上一篇微服务探索之路01篇已经安装了docker的基础上. 1 替换k8s镜像源为国内镜像 进入目录 cd /etc/apt/sources.list. ...
- Using Swap
# create swap file dd if=/dev/zero of=/.swap bs=1048576 count=4096 # format swap mkswap /.swap # sta ...
- pytest文档8-参数化(parametrize)结合allure.title()生成不同标题报告
参数化parametrize 先看一个简单的pytest参数化案例演示test_a.py # test_a.py import pytest import allure def login(usern ...