В данном документе описывается установка SuiteCRM (версии 7.10.2) на Debian 9. Все действия производятся под пользователем root.

Настройка окружения

Для начала необходимо установить и настроить Веб-сервер и сервер базы данных:

apt update
apt upgrade
apt install nginx mysql-server mysql-client php-fpm php-curl php-mysql php-mbstring php-gd php-dom git php-zip php-imap

Настройка Web-сервера NGINX

В файле конфигурации /etc/nginx/sites-available/suitecrm.conf нужно прописать следующий блок:

server {
	server_name _;
	listen 80;
	
	root /var/www/html/suitecrm;
	index index.php;
	
	location / {
		try_files $uri $uri/ /index.php?$args =404;
	}
	
	location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
    }
}

Теперь выключим стандартную конфигурацию и включим конфигурацию для SuiteCRM:

rm /etc/nginx/sites-enabled/default
ln -s /etc/nginx/sites-available/suitecrm.conf /etc/nginx/sites-enabled/suitecrm.conf

Для вступления изменений в силу необходимо перезагрузить nginx:

service nginx restart

Дополнительно нужно настроить максимальный размер загружаемого файла в кофигурации /etc/php/7.0/fpm/php.ini (по умлочанию этот параметр равен 2M):

upload_max_filesize = 20M

Создание базы данных

Выполним настройку mysql командой:

mysql_secure_installation

На все вопросы, кроме ввода пароля для root-пользователя базы данных, нажимаем Enter.

Теперь можно подключиться к mysql:

mysql -u root -p

После ввода пароля с предыдущего шага попадаем в консоль mysql.

Создадим базу данных:

CREATE DATABASE suitecrm;

Выдадим права новому пользователю на эту базу данных:

GRANT ALL PRIVILEGES ON suitecrm.* TO 'suitecrm'@'localhost' IDENTIFIED BY 'suitecrm_password';
FLUSH PRIVILEGES;

Вместо suitecrm_password необходимо придумать пароль для подключения SuiteCRM к базе данных.

Установка composer

Для установки внешних компонентов требуется Composer. Установим его:

cd /tmp
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/bin/composer

Установка SuiteCRM

Скачаем исходные тексты SuiteCRM с GitHub'a:

cd /var/www/html
wget https://github.com/salesagility/SuiteCRM/archive/v7.10.2.zip
unzip v7.10.2.zip
mv SuiteCRM-7.10.2 suitecrm

Установим зависимости:

cd /var/www/html/suitecrm
composer install

Устанавливаем права на директории и файлы:

chown -R www-data:www-data /var/www/html/suitecrm
find /var/www/html/suitecrm -type f -exec chmod g+w {} \;
find /var/www/html/suitecrm -type d -exec chmod g+x {} \;

Далее в бразуре открываем страницу http://адрес_сервера/ и должны мастер установки SuiteCRM:

Приниаем условия лицензионного соглашения и нажимаем кнопку Next. Если сервер настроен верно, то должны увидеть следующую страницу:

Если есть какие-либо ошибки или отстутсвуют пакеты, то необходимо их разрешить/установить и нажать кнопку Recheck. После этого возможна дальнейшая установка (кнопка Next).

На следующей старнице мастера необходимо заполнить параметры подключения к базе данных:

Также заполняем пароль и email администратора SuiteCRM. Жмем Next. Выполнится создание базы данных и появится окно входа в систему: