OroCRM è una piattaforma di Customer Relationship Manager (CRM) open source completamente rivolta ai team di e-commerce e marketing con una prospettiva multicanale. È completamente personalizzabile e un'applicazione CRM pronta per l'azienda che offre tantissime funzionalità. È costruito sul framework PHP Symfony e utilizza MySQL per memorizzare i propri dati. OroCRM è disponibile in due edizioni, Community Edition (CE) ed Enterprise Edition (EE). Puoi integrarlo facilmente con altre piattaforme di e-commerce come Magento e altre soluzioni.
In questo tutorial impareremo come installare OroCRM su Ubuntu 16.04.
Prerequisiti
- Un server che esegue Ubuntu 16.04.
- Un utente non root con privilegi sudo.
Per iniziare
Innanzitutto, dovrai aggiornare il tuo sistema all'ultima versione. Puoi farlo con il seguente comando:
sudo apt-get update -y
sudo apt-get upgrade -y
Una volta aggiornato il sistema, riavvia il sistema per applicare tutte le modifiche. Quindi, installa i pacchetti richiesti sul tuo sistema con il seguente comando:
sudo apt-get install git curl unzip wget -y
Installa il server LEMP
Prima di iniziare, dovrai installare LEMP (Nginx, MariaDB e PHP7) sul tuo sistema.
Innanzitutto, installa Nginx usando il seguente comando:
sudo apt-get install nginx -y
Una volta installato Nginx, avvia il servizio Nginx e abilitalo all'avvio all'avvio con il seguente comando:
sudo systemctl start nginx
sudo systemctl enable nginx
Per impostazione predefinita, l'ultima versione di MariaDB e PHP non è disponibile in Ubuntu 16.04. Quindi dovrai aggiungere il repository per questo.
Innanzitutto, aggiungi il repository MariaDB con il seguente comando:
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://kartolo.sby.datautama.net.id/mariadb/repo/10.2/ubuntu xenial main'
Quindi, aggiungi il repository PHP con il seguente comando:
sudo add-apt-repository ppa:ondrej/php
Quindi, aggiorna il repository con il seguente comando:
sudo apt-get update -y
Una volta aggiornato il repository, installa MariaDB e PHP7 eseguendo il seguente comando:
sudo apt-get install mariadb-server php7.0 php7.0-fpm php7.0-common php7.0-curl php7.0-gd php7.0-intl php7.0-json php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-xml php7.0-xml php7.0-zip php7.0-tidy php7.0-soap php7.0-opcache -y
Successivamente, dovrai impostare Timezone e aumentare il limite di memoria nel file php.ini:
sudo nano /etc/php/7.0/cli/php.ini
Modifica la seguente riga:
date.timezone = Asia/Kolkata
Salva e chiudi il file, quando hai finito.
sudo nano /etc/php/7.0/fpm/php.ini
Modifica la seguente riga:
memory_limit = 1024M
Salva e chiudi il file, quando hai finito.
Quindi, avvia il servizio MariaDB e PHP-FPM e abilita l'avvio all'avvio con il seguente comando:
sudo systemctl start mysql
sudo systemctl enable mysql
sudo systemctl start php7.0-fpm
sudo systemctl enable php7.0-fpm
Configura MariaDB per OroCRM
Per impostazione predefinita, l'installazione di MariaDB non è protetta, quindi dovrai prima proteggere MariaDB. Puoi proteggerlo eseguendo lo script mysql_secure_installation:
sudo mysql_secure_installation
Rispondi a tutte le domande come mostrato di seguito:
Set root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Quindi, accedi alla shell MariaDB e crea un database e un utente per OroCRM:
mysql -u root -p
Inserisci la tua password di root e premi Invio, quindi crea un database e un utente con il seguente comando:
MariaDB [(none)]> CREATE DATABASE orodb;
MariaDB [(none)]> CREATE USER 'orouser'@'localhost' IDENTIFIED BY 'password';
Quindi, concedi i privilegi al database OroCRM con il seguente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON orodb.* TO 'orouser'@'localhost';
Quindi, esegui il comando FLUSH PRIVILEGES in modo che la tabella dei privilegi venga ricaricata da MariaDB:
MariaDB [(none)]> FLUSH PRIVILEGES;
Infine, esci dalla shell di MariaDB:
MariaDB [(none)]> EXIT
Una volta configurato MariaDB, puoi procedere al passaggio successivo.
Installa Node.js e Composer
Dovrai anche installare Node.js e Composer sul tuo sistema. Perché Node.js verrà utilizzato da OroCRM per compilare JavaScript e Composer verrà utilizzato per installare le dipendenze PHP.
Innanzitutto, aggiungi il repository Node.js utilizzando il seguente comando:
sudo curl --silent --location https://deb.nodesource.com/setup_8.x | sudo bash -
Quindi, installa Node.js e Composer con il seguente comando:
sudo apt-get install nodejs -y
sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
sudo php composer-setup.php
Quindi, copia Composer nella directory /usr/bin con il seguente comando:
sudo cp composer.phar /usr/bin/composer
Fornire l'autorizzazione necessaria al Compositore con il seguente comando:
sudo chmod 755 /usr/bin/composer
Installa OroCRM
Innanzitutto, dovrai scaricare l'ultima versione di OroCRM dal repository Git. Puoi farlo con il seguente comando:
cd /var/www/html
sudo git clone -b 2.4 https://github.com/oroinc/crm-application.git orocrm
Quindi, cambia la directory in orocrm e installa le dipendenze richieste da PHP usando il seguente comando:
cd orocrm
sudo composer install --prefer-dist --no-dev
Durante l'installazione dovrai fornire i dettagli del database, come il nome del database, il nome utente e la password del database, l'host del database come segue:
Creating the "app/config/parameters.yml" file Some parameters are missing. Please provide them. database_driver (pdo_mysql): database_host (127.0.0.1): database_port (null): database_name (oro_crm): orodb database_user (root): orouser database_password (null): password mailer_transport (smtp): mailer_host (127.0.0.1): mailer_port (null): mailer_encryption (null): mailer_user (null): mailer_password (null): websocket_bind_address (0.0.0.0): websocket_bind_port (8080): websocket_frontend_host ('*'): websocket_frontend_port (8080): websocket_backend_host ('*'): websocket_backend_port (8080): web_backend_prefix (''): session_handler (session.handler.native_file): locale (en): secret (ThisTokenIsNotSoSecretChangeIt): installed (null): assets_version (null): assets_version_strategy (time_hash): message_queue_transport (dbal): message_queue_transport_config (null):
Quindi, installa l'applicazione eseguendo il seguente comando:
sudo php app/console oro:install --env=prod
Durante l'installazione dovrai fornire i dettagli dell'account amministratore:
Administration setup. Application URL (http://localhost): Organization name (OroCRM): Username (admin): Email: [email protected] First name: hitesh Last name: jethva Password: Load sample data (y/n): y Oro Application has been successfully installed in prod mode. Please run oro:api:doc:cache:clear command to warm-up API documentation cache Make sure that consumer command was running oro:message-queue:consume. More info you can find here: https://www.orocrm.com/documentation/current/book/installation#activating-background-tasks.
Quindi, riscalda la cache della documentazione dell'API utilizzando il seguente comando:
sudo php app/console oro:api:doc:cache:clear
Configura Nginx per OroCRM
Successivamente, dovrai creare un file host virtuale Nginx per OroCRM. Puoi farlo con il seguente comando:
sudo nano /etc/nginx/sites-available/orocrm
Aggiungi le seguenti righe:
server { server_name example.com; root /var/www/html/orocrm/web; location / { # try to serve file directly, fallback to app.php try_files $uri /app.php$is_args$args; } location ~ ^/(app|app_dev|config|install)\.php(/|$) { fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param HTTPS off; } # Enable Gzip compression gzip on; gzip_buffers 16 8k; gzip_comp_level 5; gzip_disable "msie6"; gzip_min_length 1000; gzip_http_version 1.0; gzip_proxied any; gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css image/svg+xml; gzip_vary on; # Enable browser caching # One week for javascript and css location ~* \.(?:css|js) { expires 1w; access_log off; add_header Cache-Control public; } # Three weeks for media: images, fonts, icons, video, audio etc. location ~* \.(?:jpg|jpeg|gif|png|ico|tiff|woff|eot|ttf|svg|svgz|mp4|ogg|ogv|webm|swf|flv)$ { expires 3w; access_log off; add_header Cache-Control public; } error_log /var/log/nginx/orocrm_error.log; access_log /var/log/nginx/orocrm_access.log; }
Salva e chiudi il file al termine, quindi abilita l'host virtuale Nginx con il seguente comando:
sudo ln -s /etc/nginx/sites-available/orocrm /etc/nginx/sites-enabled/orocrm
Quindi, controlla Nginx per eventuali errori di configurazione con il seguente comando:
sudo nginx -t
Dovresti vedere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Quindi, fornisci l'autorizzazione necessaria alla directory orocrm e riavvia Nginx:
sudo chown -R www-data:www-data /var/www/html/orocrm
sudo chmod -R 777 /var/www/html/orocrm
sudo systemctl restart nginx
Accedi a OroCRM
OroCRM è ora installato, è ora di accedere all'interfaccia web di OroCRM.
Apri il tuo browser web e digita l'URL htttp://example.com , verrai reindirizzato alla pagina di accesso di OroCRM come mostrato di seguito:
Fornisci il nome utente e la password dell'amministratore, quindi fai clic su Accedi pulsante, dovresti vedere la dashboard OroCRM nell'immagine seguente:
Congratulazioni! OroCRM è ora installato sul server Ubuntu 16.04.