В этой статье мы расскажем, как установить YetiForce CRM на Ubuntu 16.04 VPS с MariaDB, PHP-FPM и Nginx. YetiForce является инновационной CRM системой с открытым исходным кодом. Она построена на вершине Vtiger и имеет сотни изменений, которые помогают выполнить даже самые сложные задачи, самым простым способом. Это руководство должно работать на других системах Linux VPS, так же хорошо, но была испытана и написана для Ubuntu 16.04.
Войдите на свой VPS через SSH с пользователем SUDO
ssh furious@vps_IP
Обновление системы и установка необходимых пакетов
[furious]$ sudo apt-get update && sudo apt-get -y upgrade [furious]$ sudo apt-get install software-properties-common nano wget
Установка MariaDB 10.1
Чтобы добавить репозиторий MariaDB в список источников и установить последнюю версию MariaDB 10.1 сервера, выполните следующие команды:
[furious]$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 [furious]$ sudo add-apt-repository 'deb [arch=amd64,i386] http://ftp.osuosl.org/pub/mariadb/repo/10.1/ubuntu xenial main' [furious]$ sudo apt-get update [furious]$ sudo apt-get install -y mariadb-server
Когда установка завершена, выполните следующую команду, чтобы обеспечить установку:
[furious]$ mysql_secure_installation
Далее, нам необходимо создать базу данных для установки YetiForce.
[furious]$ mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE yetiforce; MariaDB [(none)]> GRANT ALL PRIVILEGES ON yetiforce.* TO 'yetiforce'@'localhost' IDENTIFIED BY 'strong_password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
Установка PHP и PHP необходимые модули
Чтобы установить последнюю стабильную версию PHP версии 7.0 и все необходимые модули, выполните следующую команду:
[furious]$ sudo apt-get -y install php-fpm php-cli php-json php-curl php-imap php-gd php-mysql php-xml php-zip
Следующие команды установят предел PHP памяти до 512 Мб, изменить значения upload_max_filesize и post_max_size до 100M и установите часовой пояс для UTC.
sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/7.0/cli/php.ini sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.0/cli/php.ini sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.0/fpm/php.ini sed -i "s/upload_max_filesize = .*/upload_max_filesize = 100M/" /etc/php/7.0/fpm/php.ini sed -i "s/post_max_size = .*/post_max_size = 100M/" /etc/php/7.0/fpm/php.ini
Создайте новый PHP-FPM пул для вашего пользователя:
[furious]$ sudo nano /etc/php/7.0/fpm/pool.d/your_user_name.conf [your_user_name] user = your_user_name group = your_user_name listen = /var/run/php/php7.0-your_user_name-fpm.sock listen.owner = your_user_name listen.group = your_user_name listen.mode = 0666 pm = ondemand pm.max_children = 5 pm.process_idle_timeout = 10s pm.max_requests = 200 chdir = /
Не забудьте изменить your_user_name на ваше имя пользователя.
Перезагрузите PHP-FPM:
[furious]$ sudo service php7.0-fpm restart
Загрузите и извлеките YetiForce CRM
Загрузите последнюю версию YetiForce с адреса GitHub: https://github.com/YetiForceCompany/YetiForceCRM/releases. На момент написания статьи, последняя версия YetiForce версия 3.4.0.
[furious]$ wget https://github.com/YetiForceCompany/YetiForceCRM/archive/3.4.0.zip [furious]$ unzip 3.4.0.zip [furious]$ mv YetiForceCRM-3.4.0 ~/myYetiForce.ru [furious]$ rm -f 3.4.0.zip
Установка и настройка Nginx
Чтобы установить последнюю стабильную версию Nginx, доступную в репозиториях Ubuntu, выполните следующую команду:
[furious]$ sudo apt-get install nginx
Создание самозаверяющегося сертификата SSL:
[furious]$ sudo mkdir -p /etc/nginx/ssl [furious]$ cd /etc/nginx/ssl [furious]$ sudo openssl genrsa -des3 -passout pass:x -out yetiforce.pass.key 2048 [furious]$ sudo openssl rsa -passin pass:x -in yetiforce.pass.key -out yetiforce.key [furious]$ sudo rm yetiforce.pass.key [furious]$ sudo openssl req -new -key yetiforce.key -out yetiforce.csr [furious]$ sudo openssl x509 -req -days 365 -in yetiforce.csr -signkey yetiforce.key -out yetiforce.crt
Если вы не хотите получать предупреждения, связанные с самоподписанными SSL сертификатами, вы можете приобрести сертификат доверенного SSL или заказать бесплатно с помощью Let’s Encrypt.
Затем создайте новый блок сервера Nginx:
[furious]$ sudo nano /etc/nginx/sites-available/myYetiForce.ru
server { listen 443; server_name myYetiForce.ru; root /home/your_user_name/myYetiForce.ru; location / { try_files $uri $uri/ /index.php$is_args$args; } ssl on; ssl_certificate /etc/nginx/ssl/yetiforce.crt; ssl_certificate_key /etc/nginx/ssl/yetiforce.key; ssl_session_timeout 5m; ssl_ciphers 'AES128+EECDH:AES128+EDH:!aNULL'; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; access_log /var/log/nginx/yetiforce.ru.access.log; error_log /var/log/nginx/yetiforce.ru.error.log; location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.0-your_user_name-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors off; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } location ~ /\.ht { deny all; } } server { listen 80; server_name myYetiForce.ru; add_header Strict-Transport-Security max-age=2592000; rewrite ^ https://$server_name$request_uri? permanent; }
Не забудьте изменить your_user_name на ваше имя пользователя.
Активируйте блок сервера, создав символическую ссылку:
[furious]$ sudo ln -s /etc/nginx/sites-available/myYetiForce.ru /etc/nginx/sites-enabled/myYetiForce.ru
Проверка конфигурации Nginx и перезапуск Nginx:
[furious]$ sudo nginx -t [furious]$ sudo service nginx restart
Установите YetiForce CRM
Откройте https://myYetiForce.ru/ в вашем веб-браузере, и вы должны увидеть экран установки CRM YetiForce. На этой странице вам необходимо ввести данные базы данных, которые вы создали ранее, детали администратора CRM YetiForce и, наконец, нажмите кнопку Установить.
Вот и все. Вы успешно установили YetiForce CRM на вашем Ubuntu 16,04 VPS. Для получения дополнительных сведений о том, как управлять установкой CRM YetiForce, пожалуйста, обратитесь к официальной документации YetiForce CRM.