3

Setup UVdesk Ticketing System On Ubuntu 20.04

 2 years ago
source link: https://computingforgeeks.com/setup-uvdesk-ticketing-system-on-ubuntu/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

UVdesk is one such Open Source Helpdesk Ticketing System that you can rely on as you begin to build your business from scratch one step at a time. We had covered the installation of the same UVdesk Ticketing on CentOS 8. You can check it out. In this guide, we shall venture into getting it installed on Ubuntu 20.04 so that you can have a personal feel of it. Let us look at its features.

Features of UVdesk

  • UVdesk offers SaaS-based and Open Source helpdesk solution to easier the overall support process to deliver best customer service.
  • UVdesk Open Source is free fully-functional helpdesk software, designed on very famous framework which recognize among all developers such as Symfony, a PHP framework.

Software Requirements

UVdesk needs the following software packages installed before it can run and serve you:

  • PHP7.2 or higher
  • Composer: 1.6.5 or higher
  • MailParse
  • Server: Apache
  • Database: MySQL/MariaDB

To install this software follow the following steps.

Step 1: Update and install essential tools

Once in the terminal of your fresh Ubuntu server, update it and install essential tools we shall use in our installation process

sudo apt update && sudo apt upgrade
sudo apt install wget vim git unzip curl apache2 libapache2-mod-fcgid -y

There are some modules required for the FastCGI confiugration and we need to enable them. This can be done by running this command:

sudo a2enmod actions fcgid alias proxy_fcgi rewrite
sudo systemctl restart apache2

Step 2: Install and setup database

We are going to use MariaDB for this setup. Fortunately, we have a detailed guide already to get MariaDB 10.5 installed. Check out:

After you have the database installed, the next step is to create a database and user for UVdesk. Let us, therefore, go ahead and get this done as shown below. You are free to name your database and user differently and ensure you use a strong password.

$ mysql -u root -p
CREATE DATABASE uvdeskdb;
CREATE USER 'uvdeskadmin'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON uvdeskdb.* TO 'uvdeskadmin'@'localhost';
FLUSH PRIVILEGES;
exit;

Step 3: Install and configure PHP

In order to get UVdesk pages served, there has to be a webserver. We shall use Apache for this guide. Additionally, UVdesk requires PHP we will have to set it up as well.

Install php-fpm and dependencies

sudo apt update
sudo apt install -y php
sudo apt install php-{cli,fpm,json,common,mysql,zip,gd,mbstring,curl,xml,bcmath,imap,intl,mailparse} php-pear

Check if php-fpm is running.

$ systemctl status php*-fpm.service
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-12-03 14:57:15 UTC; 1min 30s ago
       Docs: man:php-fpm7.4(8)
    Process: 41392 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/7.4/fp>   Main PID: 41389 (php-fpm7.4)
     Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
      Tasks: 3 (limit: 2204)
     Memory: 10.3M

Add recommended PHP Settings

Open up your php-fpm ini file and add/edit the details shown below. They include Timezone, and memory limit settings. Add your date.timezone and change memory_limit to 512MB.

$ sudo vim /etc/php/*/fpm/php.ini
memory_limit = 512M

[Date]
date.timezone = Africa/Nairobi

Then restart php-fpm

sudo systemctl restart php*-fpm.service

Step 4: DownloadUVdesk community helpdesk

Download the Uvdesk community helpdesk project.

wget "https://cdn.uvdesk.com/uvdesk/downloads/opensource/uvdesk-community-current-stable.zip"

Extract the file

unzip uvdesk-community-current-stable.zip

Step 5: UVdesk installation

Move the resulting directory to /var/www/uvdesk directory:

sudo mv uvdesk-community-*/  /var/www/uvdesk

Set the permissions of the directory to www-data user and group:

sudo chown -R www-data:www-data /var/www/uvdesk
sudo chmod -R 775 /var/www/uvdesk

Step 6: Configure Apache for UVdesk

We have to make a few changes to the Apache configuration defaults by adding the details we need for UVdesk. Change into sites-enabled, back up the default file, and create a new one having new configurations.

sudo mv /etc/apache2/sites-enabled/000-default.conf{,.bak}

Create a new file and add the details shown below. If you have an FQDN, replace example.com with it.

$ sudo vim /etc/apache2/sites-enabled/uvdesk.conf
<VirtualHost *:80>
    ServerName udesk.example.com
    ServerAlias www.udesk.example.com
    DocumentRoot /var/www/uvdesk/public/

    <Directory /var/www/uvdesk/public>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    <FilesMatch \.php$>
        # 2.4.10+ can proxy to unix socket
        SetHandler "proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost"
    </FilesMatch>

    ErrorLog /var/log/apache2/uvdesk-error.log
    CustomLog /var/log/apache2/uvdesk-access.log combined
</VirtualHost>

On the main Apache configuration file, Allow Override on the following part of the config file

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All ##<= Like this
        Require all granted
</Directory>

Modify the permissions on the root directory and restart the webserver

sudo chown -R www-data:www-data /var/www/uvdesk
sudo chmod -R 755 /var/www/uvdesk
sudo systemctl restart apache2

Allow port 8080 on your firewall

sudo ufw allow 80/tcp

Once that is done, we should be ready to rock and roll. Open up your favorite browser and point it to the IP or FQDN of your server. http://udesk.example.com. You should see a page as shown below. Click on “Let’s Begin

On the next page, UVdesk will check of you meet all requrements it needed for it to run. If all is good, click on “Proceed

Next, you will be needed to add Database details that we created in Step 3 as illustrated below.

  • DB Name: uvdeskdb
  • DB Username: uvdeskadmin
  • DB Password: StrongPassword

Once you are done, click on “Proceed

The page after this presents a form for you to add a super admin account into the system. Key in the information then hit “Proceed

After that, for UVdesk to configure the customer-facing and member-facing sides of the system, it requires you to enter your preferred prefix. Any prefix for members/staff and customer you prefer here is okay here. Enter them then click “Proceed

Next, the only thing remaining for you is to install UVdesk. Click on “Install Now” to get the stone rolling.

Once installation is complete, UDdesk will present you with two links: Admin and Frontend. You can click on either and check them out.

Clicking on the “Admin Panel” link leads you to a login form like the one illustrated below. Enter the Super Admin credentials we created and login.

You will be presented with a dashboard as shown below.

In Conclusion

We now have this amazing and highly customizable ticketing software platform ready for use. Find your way around it as much as you can and even as we wrap up we hope the guide was as helpful as possible. Otherwise, we return our appreciation for your relentless support, and thank you for visiting and staying till the end. Enjoy more guides in this site beginning with the ones below:


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK