Install UVdesk Helpdesk ticketing system on CentOS 8

You can download this article in PDF format via the link below to support us.
Download the guide in PDF format turn off

The process of building a company can be one of the most challenging tasks that people can do, especially if their budget is low and they need tools to simplify their scope of work and respond to customer concerns. The ticketing system is an indispensable tool for every company to simplify, speed up, and ensure orders when responding to customer needs. For start-up companies or companies that like to build their own companies, the good news is that there are already some excellent developers building OpenSource projects to help you get started immediately or even build more foundations.

UVdesk is such an open source help desk ticketing system that you can rely on after one step or one step of continuing to build your business. In this guide, we will take the risk to learn about the features of UVDesk, and then install it and learn about it. As you have already felt, it was a good journey because we planted this flower on CentOS 8 beds.

Functions of UVdesk

  • UVdesk provides SaaS-based open source help desk solutions to simplify the overall support process and provide the best customer service.
  • UVdesk Open Source is a free full-featured help desk software, based on a very well-known framework design, which is recognized by all developers (such as the PHP framework Symfony).

Software Requirements

UVdesk needs to run the following packages to run and provide you with services:

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

Step 1: Server preparation

Jump to the terminal of the new CentOS 8 server, update and install the basic tools that will be used during the installation process.

                        sudo dnf update
sudo dnf -y install git unzip vim httpd nano 

Disable SELinux

If you can handle SELinux easily, this is optional. To set it to permissive mode, run the following command in the server.

                        sudo setenforce 0
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

Step 2: Install PHP on CentOS 8

By installing it in the server, let us meet the above PHP requirements. Please follow how to install PHP 7.4 on CentOS 8. The RHEL 8 guide can quickly get everything up and running.

After installing PHP 7.4 correctly, add the following modules as shown below

                        sudo dnf install -y php-cli php-pdo php-common php-mysql php-curl php-json php-zip php-gd php-xml php-mbstring php-pecl-mailparse php-imap php-mysql

Next, open your php-fpm ini file and add/edit the details as shown below. They include time zone and memory limit settings. Add your date.timezone and change the memory_limit to 512MB.

                        $ sudo vim /etc/php.ini

memory_limit = 512M


date.timezone = Africa/Nairobi

Configure PHP-FPM

Here, we will edit Apache’s PHP-FPM configuration file:

                        sudo vim /etc/php-fpm.d/www.conf

Create a configuration file with details as shown below.

                        listen = /run/php-fpm/www.sock

user = apache
group = apache

listen.allowed_clients =
listen.owner = apache = apache
listen.mode = 0660
pm = dynamic

After making changes to apply them, restart php-fpm.

                        sudo systemctl restart php-fpm

Step 3: Install and set up UVdesk database

As mentioned in the requirements section, UVdesk needs a database. Therefore, we will set up and use MariaDB. Fortunately, we already have a detailed guide to install MariaDB 10.5 on CentOS 8. CentOS 7

After installing the database, create the database and users that UVdesk will use. Complete this task as shown in the figure below. You can use different names to name the database and users at will, and make sure to use secure passwords.

                        $ mysql -u root -p

MariaDB [(none)]> CREATE DATABASE uvdeskdb;
MariaDB [(none)]> GRANT ALL ON uvdeskdb.* TO 'uvdeskadmin' IDENTIFIED BY 'SafePassword';
MariaDB [(none)]> quit

Step 4: Install Composer

Composer 1 is required to install the dependencies of UVdesk. Do the following to set composer version 1 compatible with UVdesk files.

                        cd ~
curl -sS -o composer-setup.php
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer --version=1.10.17

Test whether composer has been successfully installed by running the composer version command

                        $ composer -V
Composer version 1.10.17 2020-10-30 22:31:58

Step 5: UVdesk installation

We will create a directory and place the UVdesk files in it. This will also help us set up the root directory where the web server will look for service files.

                        sudo mkdir /var/www/html-udvesk && cd /var/www/html-udvesk
sudo chown $USER:$USER /var/www/ -R

Now let us use composer to obtain and install the UVdesk file in the root directory.

First, clear the cache:

                        cd /var/www/html-udvesk
composer clear-cache

Then create the project:

                        composer create-project uvdesk/community-skeleton helpdesk-project

After the installation is complete, you should see a cute banner as shown below.

Step 6: Allow the UVdesk port on the firewall

In order to access the web server, we will have to allow access to http or https services. To do this, modify the firewall rules to allow port 80 or 443 as needed:

                        sudo firewall-cmd --permanent --add-port={80,443}/tcp && sudo firewall-cmd --reload

Step 7: Configure UVdesk VirtualHost

In this step, we will configure Apache to use php-fpm to process PHP files. We will only configure FPM for this specific virtual host. Open a new file and fill it with the following configuration. Note that the root directory points to the “public” folder.

                        $ sudo vim /etc/httpd/conf.d/uvdesk.conf

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/html-udvesk/helpdesk-project/public


    # Proxy declaration
    <Proxy "unix:/run/php-fpm/www.sock|fcgi://php-fpm">
       # we must declare a parameter in here (doesn't matter which) or 
       # it'll not register the proxy ahead of time

       ProxySet disablereuse=off

       # Note: If you configure php-fpm to use the "pm = ondemand" 
       #then use "ProxySet disablereuse=on"

     <FilesMatch .php$>
           SetHandler proxy:fcgi://php-fpm

    ErrorLog /var/log/httpd/uvdesk-error.log
    CustomLog /var/log/httpd/uvdesk-access.log combined

Then in the main Apache configuration file, Allow overwrite In the following part of the configuration file

                        $ sudo vim /etc/httpd/conf/httpd.conf

<Directory "/var/www">
    AllowOverride All #This part

    # Allow open access:
    Require all granted

Modify the permissions on the root directory and restart the web server

                        sudo chown -R apache:apache /var/www/
sudo chmod -R 755 /var/www/
sudo systemctl restart httpd

After that, open your favorite browser and point it to the IP or FQDN of the server. http: // ip-or-server-fqdn. You should see the page shown below. Click” Let’s start

On the next page, UVdesk will check whether you meet all the requirements for operation. If all goes well, click “ carry on

Next, you will need to add the database details we created in it third step As shown below. When finished, click “ carry on

The following pages provide a form for you to add a super administrator account to the system. Enter the information and click “ carry on

After that, for UVdesk to configure the customer-oriented and member-oriented aspects of the system, you need to enter your preferred prefix. Any prefix for members/staff and clients you like here will do. Enter them and click “ carry on

Next, the only thing left is to install UVdesk. Click” Install now Let the stones roll.

Installation progress

After installation, UDdesk will provide you with two links: Admin and Frontend. You can click any one and check it out.

Click “ Management panel The link will take you to the login form shown below. Enter the super administrator credentials and log in.

You will see a dashboard as shown below.

in conclusion

UVdesk provides an easy-to-use platform that anyone can use. You will also gain maximum flexibility to grow your business as you like without any restrictions. As always, give it a try and check if it will help your business or online project. Thanks for coming.

Other interesting guides are shared below for you to taste.

  • Install and configure Matomo analysis platform on CentOS 8
  • Set up Taiga project management tool on CentOS 8
  • Install a single-node TiDB database cluster on CentOS 8
  • How to create a community forum discussion website with Flarum

You can download this article in PDF format via the link below to support us.
Download the guide in PDF format turn off

Related Posts