So installierst du Bugzilla Bug Tracker unter Debian 11
Bugzilla ist ein kostenloses und quelloffenes Fehlerverfolgungssystem, das es uns ermöglicht, die Fehler zu verfolgen und mit Entwicklern und anderen Teams in unserem Unternehmen zusammenzuarbeiten. Es hilft uns, Bugs, Probleme und andere Änderungswünsche in ihren Produkten effektiv zu verfolgen. Aufgrund seiner robusten Funktionen wird es von Tausenden von Unternehmen auf der ganzen Welt eingesetzt. Es ist in Perl geschrieben und nutzt MySQL/MariaDB als Datenbank-Backend.
In diesem Artikel erkläre ich dir, wie du Bugzilla auf Debian 11 installierst.
Voraussetzungen
- Ein Server, auf dem Debian 11 läuft.
- Ein gültiger Domainname, der auf die IP deines Servers zeigt.
- Ein Root-Passwort ist auf deinem Server eingerichtet.
Erforderliche Abhängigkeiten installieren
Aktualisiere zunächst alle Systempakete mit dem folgenden Befehl auf die aktuelle Version:
apt-get update -y
Als Nächstes installierst du alle erforderlichen Perl-Module mit dem folgenden Befehl:
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
Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Apache und MariaDB installieren
Als Nächstes installierst du den Apache- und den MariaDB-Datenbankserver, indem du den folgenden Befehl ausführst:
apt-get install apache2 mariadb-server mariadb-client -y
Sobald beide Pakete installiert sind, starte den Apache- und MariaDB-Dienst mit dem folgenden Befehl:
systemctl start apache2 systemctl start mariadb
Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
MariaDB-Datenbank konfigurieren
Als nächstes musst du eine Datenbank und einen Benutzer für Bugzilla einrichten.
Melde dich zunächst mit folgendem Befehl in der MariaDB-Shell an:
mysql
Sobald du eingeloggt bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:
MariaDB [(none)]> CREATE DATABASE bugzilla; MariaDB [(none)]> CREATE USER 'buguser'@'localhost' IDENTIFIED BY 'password';
Als Nächstes erteilst du der Bugzilla-Datenbank mit folgendem Befehl alle Berechtigungen:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON bugzilla.* TO 'buguser'@'localhost';
Lösche die Berechtigungen und verlasse die MariaDB-Shell mit folgendem Befehl:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Als Nächstes bearbeitest du die MariaDB-Standardkonfigurationsdatei und nimmst einige Konfigurationsänderungen vor:
nano /etc/mysql/mariadb.conf.d/50-server.cnf
Füge die folgenden Zeilen in [mysqld] ein:
max_allowed_packet=16M ft_min_word_len=2
Speichere und schließe die Datei und starte den MariaDB-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart mariadb
Bugzilla installieren und konfigurieren
Lade zunächst die neueste Version von Bugzilla mit folgendem Befehl herunter:
wget https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.6.tar.gz
Sobald der Download abgeschlossen ist, erstellst du ein Verzeichnis für Bugzilla und entpackst die heruntergeladene Datei in das Bugzilla-Verzeichnis:
mkdir /var/www/html/bugzilla tar xf bugzilla-5.0.6.tar.gz -C /var/www/html/bugzilla --strip-components=1
Als Nächstes bearbeitest du die Datei localconfig im Bugzilla-Verzeichnis:
cd /var/www/html/bugzilla nano localconfig
Nimm die folgenden Änderungen vor:
$create_htaccess = 1; $webservergroup = 'www-data'; $use_suexec = 1; $db_driver = 'mysql'; $db_host = 'localhost'; $db_name = 'bugzilla'; $db_user = 'buguser'; $db_pass = 'password';
Speichere und schließe die Datei und führe dann den folgenden Befehl aus, um Bugzilla einzurichten:
./checksetup.pl
Enter the e-mail address of the administrator: admin@example.com Enter the real name of the administrator: Hitesh Jethva Enter a password for the administrator account: Please retype the password to verify: admin@example.com 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.
Als Nächstes führst du den folgenden Befehl aus, um alle erforderlichen Perl-Module zu installieren:
/usr/bin/perl install-module.pl --all
Als Nächstes änderst du den Eigentümer des Bugzilla-Verzeichnisses in www-data:
chown -R www-data:www-data /var/www/html/bugzilla/
Als Nächstes überprüfst du die Einrichtung von Bugzilla mit folgendem Befehl:
./checksetup.pl
Wenn alles in Ordnung ist, erhältst du die folgende Ausgabe:
* 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: http://cyberelk.net/tim/software/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.
Wenn du fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Apache für Bugzilla konfigurieren
Als Nächstes musst du eine Konfigurationsdatei für einen virtuellen Apache-Host für Bugzilla erstellen.
nano /etc/apache2/sites-available/bugzilla.conf
Füge die folgenden Zeilen hinzu:
<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>
Speichere und schließe die Datei, aktiviere dann den virtuellen Bugzilla-Host und aktiviere andere erforderliche Module mit dem folgenden Befehl:
a2ensite bugzilla.conf a2enmod headers env rewrite expires cgi
Starte anschließend den Apache-Dienst neu, um die Konfigurationsänderungen zu übernehmen:
systemctl restart apache2
Du kannst den Status des Apache mit folgendem Befehl überprüfen:
systemctl status apache2
Du erhältst die folgende Ausgabe:
? 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...
Sobald du fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Zugriff auf das Bugzilla-Webinterface
Öffne nun deinen Webbrowser und rufe das Bugzilla-Webinterface über die URL http://bugzilla.example.com auf. Du solltest den folgenden Bildschirm sehen:
Klicke auf die Schaltfläche Login. Du solltest den folgenden Bildschirm sehen:
Gib deine Admin-E-Mail und dein Passwort ein und klicke auf die Schaltfläche Login. Auf dem folgenden Bildschirm solltest du das Bugzilla-Dashboard sehen:
Fazit
Herzlichen Glückwunsch! Du hast Bugzilla erfolgreich mit Apache auf Debian 11 installiert. Jetzt kannst du Bugzilla in deiner Entwicklungsumgebung einsetzen, um dein Projekt zu verwalten und zu verfolgen. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.