Bugzilla的安装和部署

网上的教程用了个遍,装出来都有点问题,还是官网靠谱,下面是根据官网的资料做的整理。

环境

kvm + uos

安装apache2 、mysql等依赖

sudo apt -y install apache2
sudo apt -y install default-mysql-server ## uos的MySQL包名
sudo apt -y install libappconfig-perl 
sudo apt -y install libdate-calc-perl 
sudo apt -y install libtemplate-perl
sudo apt -y install libmime-perl # 没装上
sudo apt -y install build-essential 
sudo apt -y install libdatetime-timezone-perl
sudo apt -y install libdatetime-perl
sudo apt -y install libemail-sender-perl
sudo apt -y install libemail-mime-perl
sudo apt -y install libemail-mime-modifier-perl  # 没装上
sudo apt -y install libdbi-perl
sudo apt -y install libdbd-mysql-perl
sudo apt -y install libcgi-pm-perl
sudo apt -y install libmath-random-isaac-perl
sudo apt -y install libmath-random-isaac-xs-perl
sudo apt -y install apache2-mpm-prefork  # 没装上
sudo apt -y install libapache2-mod-perl2
sudo apt -y install libapache2-mod-perl2-dev
sudo apt -y install libchart-perl libxml-perl
sudo apt -y install libxml-twig-perl
sudo apt -y install perlmagick
sudo apt -y install libgd-graph-perl
sudo apt -y install libtemplate-plugin-gd-perl
sudo apt -y install libsoap-lite-perl
sudo apt -y install libhtml-scrubber-perl
sudo apt -y install libjson-rpc-perl
sudo apt -y install libdaemon-generic-perl
sudo apt -y install libtheschwartz-perl
sudo apt -y install libtest-taint-perl
sudo apt -y install libauthen-radius-perl
sudo apt -y install libfile-slurp-perl
sudo apt -y install libencode-detect-perl
sudo apt -y install libmodule-build-perl
sudo apt -y install libnet-ldap-perl
sudo apt -y install libauthen-sasl-perl
sudo apt -y install libtemplate-perl-doc  # 没装上
sudo apt -y install libfile-mimeinfo-perl
sudo apt -y install libhtml-formattext-withlinks-perl
sudo apt -y installlibgd-dev
sudo apt -y install libmysqlclient-dev 
sudo apt -y install lynx-cur
sudo apt -y install graphviz
sudo apt -y install python-sphinx

尽量不要使用官网上的这种安装方式

apt-get install apache2 mysql-server libappconfig-perl libdate-calc-perl libtemplate-perl libmime-perl build-essential libdatetime-timezone-perl libdatetime-perl libemail-sender-perl libemail-mime-perl libemail-mime-modifier-perl libdbi-perl libdbd-mysql-perl libcgi-pm-perl libmath-random-isaac-perl libmath-random-isaac-xs-perl apache2-mpm-prefork libapache2-mod-perl2 libapache2-mod-perl2-dev libchart-perl libxml-perl libxml-twig-perl perlmagick libgd-graph-perl libtemplate-plugin-gd-perl libsoap-lite-perl libhtml-scrubber-perl libjson-rpc-perl libdaemon-generic-perl libtheschwartz-perl libtest-taint-perl libauthen-radius-perl libfile-slurp-perl libencode-detect-perl libmodule-build-perl libnet-ldap-perl libauthen-sasl-perl libtemplate-perl-doc libfile-mimeinfo-perl libhtml-formattext-withlinks-perl libgd-dev libmysqlclient-dev lynx-cur graphviz python-sphinx

下载Bugzilla

从github上克隆,URL:https://github.com/bugzilla/bugzilla

cd /var/www/html
git clone -b 5.2 https://github.com/bugzilla/bugzilla bugzilla

我克隆的最新的版本是5.2,想要哪个版本自己选

配置MySQL

vi /etc/mysql/conf.d/mysqldump.cnf #官网上说/etc/mysql/my.cnf,这个路径下没有配置项

把这个配置改了,官网上让改ft_min_word_len=2这个,后面报错,没找到配置项,先不管了

max_allowed_packet=100M 

添加数据库的用户名和密码

mysql -u root -p -e "GRANT ALL PRIVILEGES ON bugs.* TO bugs@localhost IDENTIFIED BY '123456'" ##密码记住,后面用来配置bugzilla

这里有个坑,后面装bugzilla的时候提示没有bugs数据库,所以这个步骤还需要增加新建数据库:
进入mysql

create database bugs;

重启 MySQL:

service mysql restart

配置Apache

vi /etc/apache2/sites-available/bugzilla.conf

把下面的内容贴进去

ServerName localhost

<Directory /var/www/html/bugzilla>
  AddHandler cgi-script .cgi
  Options +ExecCGI
  DirectoryIndex index.cgi index.html
  AllowOverride All
</Directory>

执行以下命令:

a2ensite bugzilla # 如果报错,提示重启apache,重启之后再次执行
a2enmod cgi headers expires # 如果报错,提示重启apache,重启之后再次执行
service apache2 restart

安装Bugzilla

安装检查

cd /var/www/html/bugzilla
./checksetup.pl # 会检查需要安装哪些包,根据提示命令安装所有的包,这个过程稍微等待一下

编辑配置文件

vi localconfig # 如果没有这个文件,尝试切出去再切进来

把这两个配置改了

$webservergroup = www-data
$db_pass = '123456'

然后再执行检查

./checksetup.pl

这时候回检查bugzilla相关包是否安装完整,以及MySQL配置是否正确,如果都没问题会自动进去安装,安装过程中会提示管理员的输入邮箱、密码。

安转完成之后就可以在浏览器中访问了:http://ip/bugzilla

上一篇:BUG管理工具的跟踪过程(用BugZilla为例子


下一篇:testlink 1.9.3与bugzilla 4.2整合