Cómo instalar Bugzilla Bug Tracker en Debian 11

BugZilla

Bugzilla es un sistema de seguimiento de errores gratuito y de código abierto que nos permite rastrear los errores y colaborar con los desarrolladores y otros equipos de nuestra organización. Nos ayuda a realizar un seguimiento de errores, problemas y otras solicitudes de cambio en sus productos de manera efectiva. Fue adoptado por miles de organizaciones en todo el mundo debido a sus características sólidas. Está escrito en Perl y utiliza MySQL/MariaDB como base de datos.

En este artículo, explicaré cómo instalar Bugzilla en Debian 11.

requisitos previos

  • Un servidor que ejecuta Debian 11.
  • Un nombre de dominio válido apuntado con la IP de su servidor.
  • Una contraseña de root está configurada en su servidor.

Instalar las dependencias requeridas

Primero, actualice todos los paquetes del sistema a la versión actualizada usando el siguiente comando:

apt-get update -y

A continuación, instale todos los módulos Perl necesarios con el siguiente comando:

apt-get install build-essential libdatetime-timezone-perl libappconfig-perl libdate-calc-perl libtemplate-perl libmime-tools-perl libdatetime-perl libemail-sender-perl libemail-mime-perl libemail-mime-perl libdbi-perl libdbd-mysql-perl libcgi-pm-perl libmath-random-isaac-perl libmath-random-isaac-xs-perl 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 libhtml-formattext-withlinks-perl libgd-dev graphviz sphinx-common rst2pdf libemail-address-perl libemail-reply-perl libfile-slurp-perl libencode-detect-perl libmodule-build-perl libnet-ldap-perl libfile-which-perl libauthen-sasl-perl libfile-mimeinfo-perl -y

Una vez que haya terminado, puede continuar con el siguiente paso.

Instalar Apache y MariaDB

A continuación, instale el servidor de base de datos Apache y MariaDB ejecutando el siguiente comando:

apt-get install apache2 mariadb-server mariadb-client -y

Una vez que ambos paquetes estén instalados, inicie el servicio Apache y MariaDB usando el siguiente comando:

systemctl start apache2
systemctl start mariadb

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar la base de datos MariaDB

A continuación, deberá crear una base de datos y un usuario para Bugzilla.

Primero, inicie sesión en el shell de MariaDB usando el comando que se indica a continuación:

mysql

Una vez que haya iniciado sesión, cree una base de datos y un usuario con el siguiente comando:

MariaDB [(none)]> CREATE DATABASE bugzilla;
MariaDB [(none)]> CREATE USER 'buguser'@'localhost' IDENTIFIED BY 'password';

A continuación, otorga todos los privilegios a la base de datos de Bugzilla con el siguiente comando:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON bugzilla.* TO 'buguser'@'localhost';

A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

A continuación, edite el archivo de configuración predeterminado de MariaDB y modifique alguna configuración:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Agregue las siguientes líneas dentro [mysqld]:

max_allowed_packet=16M
ft_min_word_len=2

Guarde y cierre el campo y reinicie el servicio MariaDB para aplicar los cambios:

systemctl restart mariadb

Instalar y configurar Bugzilla

Primero, descargue la última versión de Bugzilla usando el siguiente comando:

wget https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.6.tar.gz

Una vez completada la descarga, cree un directorio para Bugzilla y extraiga el archivo descargado al directorio de Bugzilla:

mkdir /var/www/html/bugzilla
tar xf bugzilla-5.0.6.tar.gz -C /var/www/html/bugzilla --strip-components=1

A continuación, edite el archivo localconfig dentro del directorio de Bugzilla:

cd /var/www/html/bugzilla
nano localconfig

Realice los siguientes cambios:

$create_htaccess = 1;
$webservergroup = 'www-data';
$use_suexec = 1;
$db_driver = 'mysql';
$db_host = 'localhost';
$db_name = 'bugzilla';
$db_user = 'buguser';
$db_pass = 'password';

Guarde y cierre el archivo y luego ejecute el siguiente comando para configurar Bugzilla:

./checksetup.pl
Enter the e-mail address of the administrator: [email protected]
Enter the real name of the administrator: Hitesh Jethva
Enter a password for the administrator account: 
Please retype the password to verify: 
[email protected] is now set up as an administrator.
Creating initial dummy product 'TestProduct'...

Now that you have installed Bugzilla, you should visit the 'Parameters'
page (linked in the footer of the Administrator account) to ensure it
is set up as you wish - this includes setting the 'urlbase' option to
the correct URL.
checksetup.pl complete.

A continuación, ejecute el siguiente comando para instalar todos los módulos Perl necesarios:

/usr/bin/perl install-module.pl --all

A continuación, cambie la propiedad del directorio Bugzilla a www-datos:

chown -R www-data:www-data /var/www/html/bugzilla/

A continuación, verifique la configuración de Bugzilla con el siguiente comando:

./checksetup.pl

Si todo está bien, obtendrá el siguiente resultado:

* APACHE MODULES                                                      *
***********************************************************************
* Some Apache modules allow to extend Bugzilla functionalities.       *
* These modules can be enabled in the Apache configuration file       *
* (usually called httpd.conf or apache2.conf).                        *
* - mod_headers, mod_env and mod_expires permit to automatically      *
*   refresh the browser cache of your users when upgrading Bugzilla.  *
* - mod_rewrite permits to write shorter URLs used by the REST API.   *
* - mod_version permits to write rules in .htaccess specific to       *
*   Apache 2.2 or 2.4.                                                *
* The modules you need to enable are:                                 *
*                                                                     *
*    mod_expires, mod_headers, mod_rewrite                            *
*                                                                     *
***********************************************************************
Reading ./localconfig...

OPTIONAL NOTE: If you want to be able to use the 'difference between two
patches' feature of Bugzilla (which requires the PatchReader Perl module
as well), you should install patchutils from:

    
patchutils
Checking for DBD-mysql (v4.001) ok: found v4.050 Checking for MySQL (v5.0.15) ok: found v10.5.12-MariaDB-0+deb11u1 Removing existing compiled templates... Precompiling templates...done. Fixing file permissions... Now that you have installed Bugzilla, you should visit the 'Parameters' page (linked in the footer of the Administrator account) to ensure it is set up as you wish - this includes setting the 'urlbase' option to the correct URL. checksetup.pl complete.

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar Apache para Bugzilla

A continuación, deberá crear un archivo de configuración de host virtual de Apache para Bugzilla.

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

Agregue las siguientes líneas:

<VirtualHost *:80>
ServerName bugzilla.example.com
DocumentRoot /var/www/html/bugzilla/

<Directory /var/www/html/bugzilla/>
AddHandler cgi-script .cgi
Options +Indexes +ExecCGI
DirectoryIndex index.cgi
AllowOverride Limit FileInfo Indexes Options AuthConfig
</Directory>

ErrorLog /var/log/apache2/bugzilla.error_log
CustomLog /var/log/apache2/bugzilla.access_log common
</VirtualHost>

Guarde y cierre el archivo, luego active el host virtual Bugzilla y habilite otros módulos requeridos usando el siguiente comando:

a2ensite bugzilla.conf
a2enmod headers env rewrite expires cgi

A continuación, reinicie el servicio de Apache para aplicar los cambios de configuración:

systemctl restart apache2

Puede verificar el estado de Apache usando el siguiente comando:

systemctl status apache2

Obtendrá el siguiente resultado:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-12-19 08:57:08 UTC; 7s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 43005 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 43011 (apache2)
      Tasks: 56 (limit: 4679)
     Memory: 13.5M
        CPU: 46ms
     CGroup: /system.slice/apache2.service
             ??43011 /usr/sbin/apache2 -k start
             ??43012 /usr/sbin/apache2 -k start
             ??43013 /usr/sbin/apache2 -k start
             ??43014 /usr/sbin/apache2 -k start

Dec 19 08:57:08 taiga systemd[1]: Starting The Apache HTTP Server...

Una vez que haya terminado, puede continuar con el siguiente paso.

Acceder a la interfaz web de Bugzilla

Ahora, abra su navegador web y acceda a la interfaz web de Bugzilla usando la URL http://bugzilla.ejemplo.com. Debería ver la siguiente pantalla:

BugZilla

Haga clic en el Acceso botón. Debería ver la siguiente pantalla:

Iniciar sesión

Proporcione su correo electrónico de administrador, contraseña y haga clic en el Acceso botón. Debería ver el panel de Bugzilla en la siguiente pantalla:

Tablero BugZilla

Conclusión

¡Felicidades! Ha instalado correctamente Bugzilla con Apache en Debian 11. Ahora puede implementar Bugzilla en su entorno de desarrollo para administrar y realizar un seguimiento de su proyecto. No dude en preguntarme si tiene alguna pregunta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *