BugFree是借鉴微软的研发流程和Bug管理理念,使用PHP+MySQL独立写出的一个Bug管理 系统。简单实用、免费并且开放源代码(遵循GNU GPL)。 命名BugFree 有两层意思:一是希望软件中的缺陷越来越少直到没有,Free嘛;二是表示它是免费且开放源代码的,大家可以自由使用传播。

依赖:CentOS7+httpd+mysql+php5.6(php7不兼容)

开源地址:github.com/taobao/BugFree

安装的时候发现,github没有安装说明,官网也访问不了,只能搜索其他人博客中记录,其他人记录的大多是wamp/lamp,我是不喜欢这样集成安装的2333 于是自己记录一下咯

安装依赖

先添加epel源

1
yum install epel-release

安装httpd(apache)

1
yum install -y httpd

安装mysql 5.7社区版

1
2
3
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server

启动mysql

1
systemctl start  mysqld.service

查看默认密码

1
grep "password" /var/log/mysqld.log

修改密码(可选设置)
密码要包括:大小写字母,数字,标点符号(当然你也可以修改mysql对密码安全性的设置

1
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '<your password>';

开启外网(可选设置)

1
2
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '<your password>' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)

重载权限设置

1
2
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)

安装php5.6(巨坑~!

题外话:本来是安装了php7.0,因为一个函数的兼容性问题,bugfree检查依赖时识别不了数据库。我将bugfree fork到自己的仓库,修改了一些,检查依赖是可以了,甚至直接把版本号写死,但是安装的时候还是有问题。这台机器上也没有其他需要php的环境(redmine是ruby,gerrit是java),于是果断切换到php5.6了。

搜索php7的包

1
2
3
4
5
[[email protected] BugFree]# yum list installed | grep php
php70w-common.x86_64 7.0.29-1.w7 @webtatic
php70w-fpm.x86_64 7.0.29-1.w7 @webtatic
php70w-mysql.x86_64 7.0.29-1.w7 @webtatic
php70w-pdo.x86_64 7.0.29-1.w7 @webtatic

卸载

1
yum remove -y php70w-*

安装php5.6

1
yum install php56w php56w-pdo php56w-mysql

配置httpd的virtualhost

vim /etc/httpd/conf/httpd.conf

1
2
3
4
5
6
7
8
Listen 8000
<VirtualHost *:8000>

DocumentRoot /var/www/BugFree/

ServerName localhost

</VirtualHost>

下载bugfree源码

我习惯将php的程序放到/var/www/

1
2
cd /var/www/
git clone https://github.com/taobao/BugFree

浏览器访问
http://ip:8000

但是提示几个文件夹的权限不够

1
2
3
4
cd /var/www/
mkdir /var/www/BugFree/assets
mkdir /var/www/BugFree/protected/runtime
chmod 777 -R BugFree/

刷新浏览器页面,安装提示填写,即可安装成功

配置邮件服务器(可选)

修改bugfree/protected/config/main.php

1
2
3
4
5
6
7
8
9
10
11
12
'mail' =>
array (
'on' => '1',
'from_address' => '[email protected]',
'from_name' => 'BugFree',
'send_method' => 'SMTP',
'send_params' =>
array (
'host' => 'smtp.exmail.qq.com',
'smtp_auth' => true,
'username' => '[email protected]',
'password' => 'password',