Suite Crm Initial setup
User documentation
09/02/2025
Absolutely. Here’s the clean, final tutorial that mirrors exactly what we did together (MySQL, private repo clone, Apache + SSL docroot fix, permissions, PHP limits, installer values). No extras.
SuiteCRM 8 on Scaleway — Steps We Performed¶
1) Install system packages (Apache, MySQL, PHP 8.2 + extensions)¶
sudo apt update
sudo apt install -y apache2 mysql-server \
php8.2 php8.2-cli php8.2-common php8.2-mysql php8.2-xml \
php8.2-mbstring php8.2-curl php8.2-zip php8.2-gd php8.2-intl unzip
2) Create DB and user in MySQL ¶
sudo mysql
CREATE DATABASE suitecrm CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'suitecrm'@'localhost' IDENTIFIED BY 'STRONG_PASSWORD';
GRANT ALL PRIVILEGES ON suitecrm.* TO 'suitecrm'@'localhost';
FLUSH PRIVILEGES;
EXIT;
3) Clone the private repository into /var/www/suitecrm8
¶
cd /var/www
sudo git clone https://<your-username>@github.com/<your-org>/<your-private-suitecrm-repo>.git suitecrm8
sudo chown -R www-data:www-data /var/www/suitecrm8
(use your GitHub org/repo and auth; it will prompt for token/password if needed)
4) Apache vhost (HTTP) — point DocumentRoot to /public
¶
Create /etc/apache2/sites-available/suitecrm.conf:
<VirtualHost *:80>
ServerName suite-crm.genbastudio.nl
DocumentRoot /var/www/suitecrm8/public
<Directory /var/www/suitecrm8/public>
AllowOverride All
Require all granted
DirectoryIndex index.php
</Directory>
ErrorLog ${APACHE_LOG_DIR}/suitecrm_error.log
CustomLog ${APACHE_LOG_DIR}/suitecrm_access.log combined
</VirtualHost>
Enable and reload:
sudo a2enmod rewrite headers
sudo a2ensite suitecrm.conf
sudo systemctl reload apache2
5) SSL vhost fix (certbot file) — also point to /public
¶
Edit your Certbot SSL file (you had suitecrm-le-ssl.conf) so both blocks use:
DocumentRoot /var/www/suitecrm8/public
<Directory /var/www/suitecrm8/public>
AllowOverride All
Require all granted
DirectoryIndex index.php
</Directory>
Then:
sudo systemctl restart apache2
6) Fix installer log permissions (the /logs/install.log error)¶
cd /var/www/suitecrm8
sudo mkdir -p logs
sudo touch logs/install.log
sudo chown -R www-data:www-data /var/www/suitecrm8/logs
sudo chmod -R 775 /var/www/suitecrm8/logs
# re-apply wider perms we used
sudo chown -R www-data:www-data /var/www/suitecrm8
find /var/www/suitecrm8 -type d -exec sudo chmod 755 {} \;
find /var/www/suitecrm8 -type f -exec sudo chmod 644 {} \;
sudo chmod -R 775 /var/www/suitecrm8/public/legacy/cache /var/www/suitecrm8/public/legacy/upload
7) Raise PHP limits (to clear the installer checks)¶
Edit /etc/php/8.2/apache2/php.ini and set:
memory_limit = 512M
upload_max_filesize = 20M
post_max_size = 25M
max_execution_time = 300
max_input_time = 300
Restart Apache:
sudo systemctl restart apache2
8) Run the web installer and use these values¶
Open:
https://suite-crm.genbastudio.nl/install.php
Fill in:
-
URL of SuiteCRM Instance: (prefilled)
https://suite-crm.genbastudio.nl -
Populate Database with Demo Data?:
No -
SuiteCRM Database User:
suitecrm -
SuiteCRM Database User Password:
STRONG_PASSWORD -
Host Name:
localhost -
Database Name:
suitecrm -
Database Port:
3306 -
SuiteCRM Application Admin Name:
admin(or your choice) - SuiteCRM Admin User Password: (strong password)
Click Proceed and complete the install.
That’s the whole flow we did—MySQL, private repo, Apache + SSL pointing to /public, permissions, PHP limits, and the exact installer values.