Set up UVdesk Ticketing System on Ubuntu 20.04

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

UVdesk is such an open source help desk ticketing system that you can rely on to build your business from scratch once. We have already introduced how to install the same UVdesk Ticketing on CentOS 8. You can check it. In this guide, we will try to install it on Ubuntu 20.04 so that you have an idea about it. Let’s see its function.

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 and full-featured help desk software, based on a well-known framework design that can be recognized by all developers (such as Symfony) (a PHP framework).

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

To install this software, follow the steps below.

Step 1: Update and install basic tools

After entering the terminal of the new Ubuntu server, update it and install the basic tools that will be used during the installation process

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

FastCGI configuration requires some modules, we need to enable them. This can be done by running the following command:

                        sudo a2enmod actions fcgid alias proxy_fcgi rewrite
sudo systemctl restart apache2

Step 2: Install and set up the database

We will use MariaDB for this setup. Fortunately, we already have a detailed guide to install MariaDB 10.5. Check out how to install MariaDB on Ubuntu (Focal Fossa)

After installing the database, the next step is to create a database and user for UVdesk. So let’s proceed with this operation as shown below. You are free to use different names for the database and users, and make sure to use strong passwords.

                        $ mysql -u root -p
Password: <Enter-your-password>

MariaDB [(none)]> CREATE DATABASE uvdeskdb;
MariaDB [(none)]> CREATE USER 'uvdeskadmin'@'localhost' IDENTIFIED BY 'StrongPassword';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON uvdeskdb . * TO 'uvdeskadmin'@'localhost';
MariaDB [(none)]> exit;

Step 3: Install and configure PHP

In order to provide UVdesk pages, there must be a web server. We will use Apache in this guide. In addition, UVdesk requires PHP, and we must also set it up.

Install php-fpm and dependencies

                        sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install -y php
sudo apt install php-{cli,fpm,pdo,json,common,mysql,zip,gd,mbstring,curl,xml,bcmath,imap,intl,mailparse} php-pear

Check if php-fpm is running.

                        $ sudo systemctl status php7.4-fpm
● 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

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/7.4/fpm/php.ini

memory_limit = 512M


date.timezone = Africa/Nairobi

Then restart php-fpm

                        sudo systemctl restart php7.4-fpm

Step 4: Install PHP composer

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

                        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/udvesk && cd /var/www/udvesk
sudo chown $USER:$USER /var/www/ -R

Now let’s use composer to get and install UVdesk files in our root directory

First, clear the cache:

                        cd /var/www/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: Configure Apache for UVdesk

We have to make some changes to the Apache configuration defaults by adding the details required by UVdesk. Change to enable the site, back up the default file, and create a new file with the new configuration.

                        cd /etc/nginx/sites-enabled/
sudo mv 000-default.conf 000-default.conf.bak

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

                        $ sudo vim /etc/apaches/sites-enabled/uvdesk.conf

Listen 8080
<VirtualHost *:8080>
    DocumentRoot /var/www/udvesk/helpdesk-project/public

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

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

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

On the main Apache configuration file, overrides are allowed on the following part of the configuration file

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

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

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

Allow port 8080 on the firewall

                        sudo ufw allow 8080/tcp

Once completed, we should be ready to rock. Open your favorite browser and point it to the server’s IP or FQDN. http: // ip-or-server-fqdn: 8080. You should see the page shown below. Click” Let’s start

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

Next, you will need to add the database details we created in step 3, 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.

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 lead you to the login form shown below. Enter the super administrator credentials we created and log in.

You will see a dashboard as shown below.

in conclusion

Now, we can already use this amazing and highly customizable ticketing software platform. Try to find a solution to the problem as much as possible, even if we summarize a little, I hope this guide will help you. Otherwise, we will thank you for your unremitting support and thank you for your presence and presence. Start with the following and enjoy more guides in this website:

Use Caddy Web Server to host your WordPress website

How to install PHP 8.0 on Ubuntu

Let’s encrypt SSL to install Odoo 14 on Ubuntu

How to set up Bolt CMS with MySQL on Ubuntu

How to install Mailu mail server on Ubuntu

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