Software

How to install Mantis Bug Tracker on Ubuntu

This tutorial walks you through the process of installing MantisBT on Ubuntu 16.04 and how to best connect to it on your mobile device.

mantishero.jpg
Image: Jack Wallen

Bug tracking is a necessity. Your developers depend upon an easy way to of track those bugs, otherwise it would be difficult to know what issues are plaguing the system and what issues have been resolved.

I recently walked you through the process of installing osTicket. The one asset that particular system is missing is a viable mobile app. Considering users are no longer seated at their desks, developers need a more efficient way of helping users submit bugs. There are a couple of osTicket mobile apps available, but they either won't connect to the server or are too buggy to use. And using osTicket through the mobile browser isn't the best option.

Fortunately, osTicket isn't the only game in town. There are a few open source bug tracking systems available, one of which is MantisBT. This particular bug tracking system has a mobile app that can be found in both the Google Play Store and Apple iTunes. Unfortunately, the mobile apps are so out of date that they won't connect to the latest MantisBT server. However, the newer versions of MantisBT are so well designed that they work beautifully in a mobile browser, so there's really no need for a mobile app. Before you can use the service on your mobile device, you must first have MantisBT up and running on your server. I'm going to walk you through the process of installing this bug tracker on Ubuntu 16.04. It's not terribly challenging, but does require you to work from the command line.

Let's get this done.

Dependencies

The first thing you must do is have your full LAMP stack up and running. This can be done with a single command. From the terminal, issue the command sudo tasksel. In the resulting window (Figure A), scroll down and select LAMP server (scroll with your cursor keys and select with your space bar).

Figure A

Figure A

Installing the LAMP stack via tasksel.


During the installation, you will be prompted to create and verify a password for the MySQL root user. Make sure you remember this password.

You will also need to install mbstring for PHP. This is done with the command:

sudo apt install php-mbstring

Next you need to download the latest version of MantisBT (as of this writing, 2.13.1). Do that with the command:

wget https://excellmedia.dl.sourceforge.net/project/mantisbt/mantis-stable/2.13.1/mantisbt-2.13.1.zip

While that file is downloading, we need to configure PHP. Open up the php.ini file for editing with the command:

sudo nano /etc/php/7.0/apache2/php.ini

Make sure the following lines look like you see below:

date.timezone= US/Eastern
upload_max_filesize = 50M
memory_limit = 128M

NOTE: If your timezone isn't the same as above, make sure you change it according to this guide. Save and close that file. Restart Apache with the command:

sudo systemctl restart apache2

Next we need to change the permissions of a directory and move the mantis folder. This is done with the following commands:

sudo chown -R www-data:www-data /var/www/html/
sudo chmod -R 777 /var/www/html/
sudo mv mantisbt-2.13.1/ /var/www/html/mantis

Installation

Before we run the installer, we need to create a virtual host. Issue the command sudo nano /etc/apache/sites-available/mantis.conf. In that new file, add the following contents:

<VirtualHost *:80>
DocumentRoot "/var/www/html/mantis"
ServerName SERVER_IP
ErrorLog "/var/log/apache2/mantis-error_log"
CustomLog "/var/log/apache2/mantis-access_log" combined
<Directory "/var/www/html/mantis/">
DirectoryIndex index.php index.html
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

Where SERVER_IP is the IP address of the server hosting MantisBT.

Enable that site with the command:

sudo a2ensite manis

Finally, issue the command sudo cp /var/www/html/mantis/config/config_inc.php.sample /var/www/html/mantis/config/config_inc.php. Open that file for editing and make sure to add a random 16 character string in the $g_crypto_master_salt entry, so that it looks something like:

$g_crypto_master_salt = 'j9a87sjajsd;jfsd87#$%^*&';

It needs to be a minimum of 16 characters.

Restart Apache with the command sudo systemctl restart apache2.

Open up a browser and point it to http://SERVER_IP/mantis. You should see all of the pre-installation checks listed as GOOD. Scroll down and take care of filling in all the necessary installation options. Once you've filled everything out, click Install/Upgrade Database. This will create the necessary database. If, in the next screen, you see an error writing the configuration file, you'll need to follow the instructions and copy and paste the included text or manually edit the entries into the /var/www/html/mantis/config/config_inc.php file. Once you've done that, scroll down and click Continue. You can then log into the account with the credentials administrator/root. You will want to immediately change the administrator user password.

At this point, you can start creating and managing projects.

Connecting on your mobile device

Once again, don't bother installing the mobile app. Instead, fire up your mobile browser and point it to http://SERVER_IP/mantis (where SERVER_IP is the IP address of the server hosting MantisBT). You should be greeted with the login, where you can log in with your account credentials. Once you've successfully authenticated, you can start using MantisBT via your mobile browser. As you can see (Figure B), the design of the site works quite well within the mobile browser.

Figure B

Figure B

MantisBT as viewed through Chrome on Android.

And that's all there is to getting the MantisBT bug tracking system up and running, and using it with your mobile device. Enjoy tracking those bugs.

Also See

About Jack Wallen

Jack Wallen is an award-winning writer for TechRepublic and Linux.com. He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website jackwallen.com.

Editor's Picks

Free Newsletters, In your Inbox