In the world of customer support, having a reliable ticketing system (helpdesk) is essential for managing inquiries, bugs, and requests from users. UVdesk is one of the popular open-source helpdesk solutions due to its flexibility, scalability, and ability to be customized according to your business needs. In this article, we will comprehensively discuss what UVdesk is, its main features, system requirements, and the steps to install it on Ubuntu.
Introduction to UVdesk
UVdesk is an open-source helpdesk system designed to help support teams manage tickets, emails, and customer interactions. Built on the Symfony framework (PHP), UVdesk supports flexible integrations, workflow automation, and custom branding. Because it is open source, businesses can download, modify, and extend the core code to match their customer support requirements.
On its official website, UVdesk provides both SaaS and open-source versions, giving organizations the choice of running it on their own infrastructure or using external hosting.
Features of UVdesk Open Source
UVdesk Open Source offers a wide range of features that make it competitive and highly reliable:
- Branding: customize the helpdesk interface with logos, favicons, and other branding elements.
- Highly Customizable: being based on Symfony, the system can be tailored to fit specific business workflows.
- Knowledge Base: provides articles, FAQs, and documentation so customers can find answers independently.
- Mailbox Management: supports incoming emails that are converted into tickets, including multiple email addresses.
- Saved Replies: create response templates for common inquiries to improve efficiency.
- Ticket Management: manage tickets with tagging, filtering by status, agent, customer, and more.
- Ticket Tagging: categorize tickets with types and tags for easier searching and grouping.
- User Management: supports multiple agents, teams, and groups with specific roles and permissions.
- Automation / Workflow: define rules triggered by events, such as sending notifications or updating ticket status.
- Module Integration: supports extension modules and third-party integrations.
- Open Source: full access to inspect, modify, and extend the UVdesk codebase.
Additionally, from the UVdesk GitHub repository (community-skeleton), there are advanced features such as ticket collaborator management, API support, attachment handling, and a customizable user portal.
Users of UVdesk Open Source
Several organizations have adopted the open-source version of UVdesk for their helpdesk needs. The list of open-source clients includes various companies such as Charitybay, Mind Spark Technologies, PH1 Consulting, Robocraze, Webdp, and others.
The adoption across these companies shows that UVdesk is suitable for multi-industry use, from small startups to mid-sized organizations that want to manage customer support in a self-hosted environment.
Installing UVdesk
1. System Requirements
Before installing UVdesk on Ubuntu, ensure that your server meets the following requirements:
Hardware Requirements:
- Minimum 1 GHz processor
- At least 4 GB RAM
Software Requirements:
- PHP 7.3+
- Composer (version 2)
- PHP extensions: IMAP and Mailparse
- Web server: Apache (or Nginx)
- Database: MySQL or MariaDB
2. Installing the LAMP Stack
First, update your Ubuntu system:
sudo apt update
sudo apt upgrade -yInstall Apache web server and certbot:
sudo apt install apache2 certbot python3-certbot-apache -yInstall MariaDB database server:
sudo apt install mariadb-server -yAdd the ondrej/php PPA repository:
sudo add-apt-repository ppa:ondrej/php -y
sudo apt upgrade -yInstall PHP 8.2 and required extensions:
sudo apt install libapache2-mod-php8.2 php8.2 php8.2-common php8.2-cli \
php8.2-curl php8.2-intl php8.2-gd php8.2-xsl php8.2-mbstring php8.2-zip \
php8.2-xml php8.2-bz2 php8.2-mysql php8.2-soap php8.2-gmp php8.2-bcmath \
php8.2-apcu php8.2-imagick php8.2-imap php8.2-xdebug unzip -yInstall Composer:
sudo wget https://getcomposer.org/download/latest-stable/composer.phar -O /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer3. Creating the Database
Log in to MariaDB:
sudo mysqlCreate a database and user:
CREATE DATABASE uvdesk;
CREATE USER 'uvdesk'@'localhost' IDENTIFIED BY 'secretpassword';
GRANT ALL PRIVILEGES ON uvdesk.* TO 'uvdesk'@'localhost';
FLUSH PRIVILEGES;
exit4. Virtual Host Configuration
Create an Apache virtual host configuration for help.domain.com:
sudo nano /etc/apache2/sites-available/help.domain.com.confInsert the configuration:
<VirtualHost *:80>
ServerName help.domain.com
DocumentRoot /var/www/help.domain.com/public
<Directory /var/www/help.domain.com/public>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/help.domain.com_error.log
CustomLog /var/log/apache2/help.domain.com_access.log combined
</VirtualHost>
Enable the virtual host and restart apache2:
sudo a2ensite help.domain.com
sudo systemctl restart apache2Request an SSL certificate:
sudo certbot --non-interactive \
-m [email protected] \
--agree-tos \
--no-eff-email \
--apache -d help.domain.com \
--redirect5. Installing UVdesk via Composer
Create a UVdesk project with Composer:
composer create-project uvdesk/community-skeleton help.domain.comMove the help.domain.com directory to /var/www:
sudo mv help.domain.com /var/wwwSet directory ownership:
sudo chown -R www-data:www-data /var/www/help.domain.comContinue the installation in a web browser by accessing https://help.domain.com.
- Welcome to the helpdesk installation wizard, click
LET'S BEGIN. - Check
system requirements. If everything is satisfied, clickPROCEED. - Database configuration: enter the database name, username, and password, then click
PROCEED. - Create Super Admin Account: enter name, email, and password, then click
PROCEED. - Website Configuration: configure
Member Panel PrefixandCustomer Panel Prefix, then clickPROCEED. - Finally, click
INSTALL NOW.
UVdesk installation is now complete. Click Admin Panel to log in to the Admin/Member Panel, and click Knowledgebase to view the frontend.
6. .env Configuration
Generate a key using openssl for APP_SECRET:
openssl rand -hex 32Example response:
965da254d08366dca455db7e0691cb493233d8250bb2a058291beee0b1b459c2Open the .env file:
sudo nano /var/www/help.domain.com/.envSet the configuration:
APP_ENV=prod
APP_SECRET=965da254d08366dca455db7e0691cb493233d8250bb2a058291beee0b1b459c2Conclusion
After following the steps above, you can now install UVdesk Open Source on your server and start building your own helpdesk system. Since it is open source and built on Symfony, you have full freedom to customize, extend, and integrate UVdesk according to your business needs. Additionally, with an active community and proven adoption across organizations, you can be confident that this is a scalable and reliable solution. Good luck, and may your customer support system become more structured and efficient!




