How to Install SuiteCRM on Ubuntu 26.04

[keyword]


SuiteCRM is an open source CRM solution designed to optimize sales processes, CRM marketing and customer service. With its modules, SuiteCRM offers comprehensive tools for managing leads, creating PDF templates for quotes and invoices, generating CRM reports, and more. Users can customize SuiteCRM by adding or removing modules, renaming them, and adjusting fields, layouts, and module relationships to suit their needs. In this article, we will show you how to install SuiteCRM on Ubuntu 26.04

Prerequisites

  • An Ubuntu 26.04 VPS with at least 4 GB of RAM
  • SSH access with sudo rights, or root access

conventions

# тАУ given commands should be executed with root privileges either directly as a root user or by use of sudo command
$ тАУ given commands should be executed as a regular user

Step 1. Update the system

First, we need to login to our Ubuntu 26.04 VPS via SSH:

ssh master@IP_Address -p Port_number

Replace “master” with a user who has sudo rights or root if necessary. Also replace “IP_Address” and “Port_Number” with your server’s respective IP address and SSH port number. Next, let’s make sure we’re on Ubuntu 26.04. You can verify this with this command:

$ lsb_release -a

You should get this as the output:

No LSB modules are available.
Distributor ID: Ubuntu
Description:  Ubuntu Resolute Raccoon
Release:  26.04
Codename: resolute

Then run the following command to make sure that all installed packages on the server are updated to their latest available versions:

$ sudo apt update 

That’s it, your system’s local list of available software packages and their versions from online repositories should now be updated.

Step 2. Install PHP

Ubuntu 26.04 ships with PHP 8.4, and currently SuiteCRM 8.9.x supports this PHP version. Let’s install PHP 8.4 and its extensions from the default Ubuntu repository.

# sudo apt install php-{bcmath,common,curl,fpm,intl,mbstring,mysql,soap,xml,xsl,zip,cli}

Next, we need to change the following settings in the php.ini file:

upload_max_filesize = 2M

The upload_max_filesize must be set to at least 6M

$ sudo nano /etc/php/8.4/cli/php.ini

Find the string upload_max_filesize and change the value. Then restart php-fpm to apply the changes.

$ sudo systemctl status php8.4-fpm

Step 3. Install MariaDB Server

Ubuntu 26.04 ships with MySQL 8.4 and MariaDB 11.8. At the time of this writing, MariaDB 11.8 is supported by SuiteCRM. Let’s install MariaDB server now.

$ sudo apt install mariadb-server

Once installed, MariaDB should be up and running. We can proceed with creating a new database and its user for our SuiteCRM website.

$ sudo mysql 

After logging into MySQL shell we can run it.

mysql> CREATE DATABASE suitecrm;
mysql> CREATE USER 'suitecrm'@'localhost' IDENTIFIED BY 'm0d1fyth15';
mysql> GRANT ALL PRIVILEGES ON suitecrm.* TO 'SuiteCRM'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> \q

Step 4. Install and configure Apache

In this article we will use Apache as the web server. Let’s install it now.

$ sudo apt install apache2 -y

Then we need to create an Apache virtual host for our SuiteCRM website.

$ sudo nano /etc/apache2/sites-enabled/suitecrm.conf

Insert the following into the file.


    ServerName suitecrm.yourdomain.com
    DocumentRoot /var/www/html/suitecrm/public

    # Proxy to PHP-FPM
    
        SetHandler "proxy:unix:/var/run/php/php8.4-fpm.sock|fcgi://localhost/"
    

    
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    

    # Other directives for logs, security, etc.

Be sure to replace suitecrm.yourdomain.com with your current domain or subdomain name that already points to your server. Save the file and then exit. We also need to enable the mod rewrite.

$ sudo a2enmod rewrite
$ sudo systemctl restart apache2

Step 5. Install SuiteCRM

To install SuiteCRM, we need to download the installation file first. Let’s download it now.

$ wget https://suitecrm.com/download/166/suite89/566057/suitecrm-8-9-2.zip

The SuiteCRM installation file may have a newer version by the time you read this article. To get the most recent version, you can download the SuiteCRM download page.

Once downloaded, we can extract the file.

$ sudo unzip suitecrm-8-9-2.zip -d /var/www/html/suitecrm8

Now we need to change the permissions.

$ sudo chown -R www-data: /var/www/html/suitecrm8
$ cd /var/www/html/suitecrm8
$ sudo find . -type d -not -perm 2755 -exec chmod 2755 {} \;
$ sudo find . -type f -not -perm 0644 -exec chmod 0644 {} \;
$ sudo find . ! -user www-data -exec chown www-data: {} \;
$ sudo chmod +x bin/console

If you want to install it interactively, you can choose option 1 below.

Option 1 тАУ Running

$ sudo -u www-data ./bin/console suitecrm:app:install 

without any options, the command will prompt you for the required options

Option 2 тАУ Running

# sudo -u www-data ./bin/console suitecrm:app:install -u "admin_username" -p "admin_password" -U "db_user" -P "db_password" -H "db_host" -N "db_name" -S "site_url" -d "demo_data"

In the previous step, we created a database and a database user. We can use the database details and run the full command with options.

# sudo -u www-data ./bin/console suitecrm:app:install -u "suitecrm" -p "2Y4kuYwFMaMWgxHH" -U "suitecrm" -P "m0d1fyth15" -H "localhost" -N "suitecrm" -S "http://suitecrm.yourdomain.com" -d "yes"

Wait for it to finish; you will see a message like this at the end.

SuiteCRM Silent Install
============

Running: check-route-access
step: check-route-access | status: done
One or More Failed Checks: The SuiteCRM Title cannot be found. This is not a valid SuiteCRM Page. Please refer to the logs/install.log
One or More Failed Checks: The result of the curl call to the graphql page was empty. Please refer to the logs/install.log
One or More Failed Checks: Please refer to the logs/install.log
Running: check-install-lock
step: check-install-lock | status: done
Installer not locked. Proceeding with install
Running: check-db-connection
step: check-db-connection | status: done
DB credentials ok
Running: install-system-checks
step: install-system-checks | status: done
Running: create-config
step: create-config | status: done
Created silent install config: config_si.php
Running: create-env
step: create-env | status: done
Created .env.local
Added randomly generated APP_SECRET
Running: run-legacy-install
step: run-legacy-install | status: done
SuiteCRM Installation Completed
Running: check-cron-user
step: check-cron-user | status: done
root has been added to the allowed_cron_users list. This is not recommended.
However, if you really want to allow root to run cron jobs, please remove the suffix _REMOVE_THIS_NOTICE_IF_YOU_REALLY_WANT_TO_ALLOW_ROOT from the entry.

============

At this point you should be able to access SuiteCRM with your domain name at http://suitecrm.yourdomain.com. For more information about SuiteCRM, its features and configuration, please check their official documentation.

SuiteCRM LoginSuiteCRM Login

You should be able to log in with the credentials we used during the installation.

How to Install SuiteCRM on Ubuntu 26.04 DashboardHow to Install SuiteCRM on Ubuntu 26.04 Dashboard

Once you’re logged in, you can start setting up your SuiteCRM website.

Final Thoughts

You do not need to install SuiteCRM on Ubuntu 26.04 if you have an active server management service with us, in which case you can simply ask our expert Linux administrators to install SuiteCRM on Ubuntu 26.04 for you. They are available 24├Ч7 and will address your request immediately. Managing SuiteCRM instances is not just about the installation; we can help you optimize your SuiteCRM installation, even if you don’t have an active service with us, using our per incident server support.

If you liked this post on how to install SuiteCRM on Ubuntu 26.04, please share it with your friends or leave a comment below.



Eva Grace

Eva Grace

Leave a Reply

Your email address will not be published. Required fields are marked *