Hvordan installere OroCRM på Ubuntu 16.04

OroCRM er en gratis og åpen kildekode Customer Relationship Manager (CRM)-applikasjon bygget på OroPlatform. OroPlatform er fullt tilpassbar åpen kildekode-programvare for forretningsapplikasjonsplattformer. OroPlatform gir deg alle funksjonene som kreves for å lage en tilpasset applikasjon. OroCRM er bygget ved hjelp av PHP Symfony-rammeverket og lagrer dataene i MySQL/MariaDB-databaseserveren. Det er en bedriftsklar CRM-applikasjon som tilbyr tonnevis av funksjoner. Den integreres også med mange tredjepartsapplikasjoner som Magento Store, MailChimp, Zendesk og mange flere. Den er flerspråklig og har et fullt responsivt brukergrensesnitt, som gir deg muligheten til å administrere det ved hjelp av mobile enheter også.

Forutsetninger

I denne opplæringen vil vi bruke crm.example.comsom domenenavnet som pekte til serveren. Erstatt alle forekomster av crm.example.commed ditt faktiske domenenavn.

Oppdater basissystemet ditt ved å bruke veiledningen Hvordan oppdatere Ubuntu 16.04 . Når systemet ditt har blitt oppdatert, fortsett å installere de nødvendige avhengighetene.

Installer Nginx og PHP 7

OroCRM kan installeres på hvilken som helst produksjonswebserver som støtter PHP. OroCRM støtter alle versjoner av PHP større enn 7.0. I denne opplæringen vil vi bruke Nginx med PHP-FPM og PHP 7.1.

Installer Nginx.

sudo apt -y install nginx

Start Nginx og aktiver den automatisk ved oppstart.

sudo systemctl start nginx
sudo systemctl enable nginx

PHP 7.1 er ikke tilgjengelig i standarddepotet apt. Først legger du til PPA-depotet for PHP.

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Installer PHP 7.1 sammen med PHP-modulene som kreves av OroCRM.

sudo apt update
sudo apt -y install php7.1 php7.1-fpm php7.1-common php7.1-curl php7.1-gd php7.1-intl php7.1-json php7.1-mbstring php7.1-mcrypt php7.1-mysql php7.1-xml php7.1-xml php7.1-zip php7.1-tidy php7.1-soap php7.1-opcache

Rediger den innlastede PHP-konfigurasjonsfilen.

sudo nano /etc/php/7.1/cli/php.ini

Finn følgende linjer. Fjern kommentarer og gjør endringer som vist.

date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate timezone

cgi.fix_pathinfo=0

Start PHP-FPM og la den starte ved oppstart.

sudo systemctl start php7.1-fpm
sudo systemctl enable php7.1-fpm

Installer MariaDB

MariaDB er en åpen kildekode-gaffel av MySQL. Legg til MariaDB 10.2-depot.

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'

Installer MariaDB.

sudo apt -y update
sudo apt -y install mariadb-server

Start MariaDB og la den automatisk starte ved oppstart.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Opprett databasen for OroCRM

Logg på MySQL-skallet som root-bruker ved å kjøre.

mysql -u root -p

Oppgi passordet for MariaDB-rotbrukeren for å logge på.

Kjør følgende spørringer for å opprette en database og en databasebruker for OroCRM-installasjon.

CREATE DATABASE oro_data;
CREATE USER 'oro_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON oro_data.* TO 'oro_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Du kan erstatte databasenavnet oro_dataog brukernavnet oro_useretter eget valg. Pass på å endre StrongPasswordtil et veldig sterkt passord.

Installer Node.js og Composer

OroCRM krever også Node.js JavaScript-kjøretid. Node.js vil bli brukt av OroCRM for å kompilere JavaScript, som brukes til å bygge brukergrensesnittet til applikasjonen. Standarddepotet til Ubuntu inneholder en utdatert versjon av Node.js, så du må legge til Nodesource-depotet til systemet ditt for å få den nyeste versjonen.

sudo curl --silent --location https://deb.nodesource.com/setup_8.x | sudo bash -

Installer Node.js og Git.

sudo apt -y install nodejs git

Git vil bli brukt til å klone OroCRM-depotet fra internett. Du må også installere Composer. Composer er et avhengighetsbehandlingsverktøy for PHP-applikasjoner. Fordi OroCRM er skrevet i Symfony-rammeverket, trenger du Composer for å installere avhengighetene og applikasjonen.

Installer Composer.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php

Flytt Composer til /usr/binkatalogen slik at den kan kjøres fra hvor som helst i systemet.

sudo mv composer.phar /usr/bin/composer

Gi utførelsestillatelse til komponisten.

sudo chmod +x /usr/bin/composer

Installer OroCRM

Det er mange måter å laste ned OroCRM på serveren din. Den mest hensiktsmessige måten å få den mest oppdaterte versjonen på er å klone depotet gjennom Git.

Klon OroCRM-depotet.

cd /usr/share/nginx/
sudo git clone -b 2.4 https://github.com/oroinc/crm-application.git orocrm

Kopier eksempelfilen parameterstil standardfilen parameterssom brukes av OroCRM.

cd orocrm
sudo cp app/config/parameters.yml.dist  app/config/parameters.yml

Før du kan fortsette videre, må du oppdatere parameters.ymlfilen for å gi database- og e-postinformasjon.

sudo nano app/config/parameters.yml

Finn følgende linjer.

database_driver:   pdo_mysql
database_host:     127.0.0.1
database_port:     ~
database_name:     oro_crm
database_user:     root
database_password: ~

Oppdater konfigurasjonen ovenfor i henhold til databasen du har opprettet for å lagre OroCRM-data. I vårt tilfelle skal det se slik ut.

database_driver:   pdo_mysql
database_host:     127.0.0.1
database_port:     3306
database_name:     oro_data
database_user:     oro_user
database_password: StrongPassword

Hvis du har en SMTP-server klar og du ønsker å bruke e-postsendingsfunksjoner umiddelbart, kan du oppdatere e-postinnstillingene som vist.

mailer_transport:  smtp
mailer_host:       mail.example.com
mailer_port:       456
mailer_encryption: ssl
mailer_user:       [email protected]
mailer_password:   EMailPassword

Hvis du ikke har en e-postserver klar, kan du hoppe over den inntil videre ved å la de eksisterende verdiene stå. Du kan alltid endre e-postkonfigurasjon via dashbordet.

Sett inn en tilfeldig streng secretved å erstatte ThisTokenIsNotSoSecretChangeIt. En tilfeldig streng er nødvendig for å kode øktdataene. En eksempelstreng vil se slik ut.

secret:            uxvpXHhDxCFc9yU1hV1fMwjSoyVUzGh4WBMBBBa3XEgrRUF5OuB2h8iNl9JRDqcd

Du kan generere en tilfeldig streng ved å bruke pwgenverktøyet. Installer pwgenved å kjøre sudo apt -y install pwgen. For å generere en tilfeldig streng, kjør pwgen -s 64 1.

Lagre filen og gå ut av redigeringsprogrammet. Installer de nødvendige PHP-avhengighetene gjennom composer.

sudo composer install --prefer-dist --no-dev

Bruk --no-devvil sikre at Composer bare installerer avhengighetene som kreves for å kjøre webserveren i produksjonsmodus. Skriptet vil ta noen minutter å laste ned og installere de nødvendige PHP-avhengighetene.

Installer applikasjonen.

sudo php app/console oro:install --env=prod

This will build the web cache and write the database. The --env=prod parameter is provided to install the application in production mode. The installation will only proceed if all the required dependencies are installed and configured.

During the installation, you will be asked a few questions for setting up the administrator account. The questions are as follows.

Administration setup.
Application URL (http://localhost): http://crm.example.com
Organization name (OroCRM): My Org
Username (admin): admin
Email: [email protected]
First name: John
Last name: Doe
Password:
Load sample data (y/n): y

Provide the information. Load the sample data to evaluate the product before using it for production.

Warm up the API documentation cache:

sudo php app/console oro:api:doc:cache:clear

Configuring Nginx, Firewall and Permissions

Create an Nginx server block file to serve the application to the users.

sudo nano /etc/nginx/sites-available/orocrm

Populate the file.

server {
    server_name crm.example.com;
    root  /usr/share/nginx/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.1-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;
}

Pass på at du endrer crm.example.comtil ditt faktiske domenenavn. Konfigurasjonen ovenfor inkluderer også konfigurasjonen som kreves for GZip-komprimering og nettleserbufring. Gzip-komprimering komprimerer dataene før de sendes til nettleseren. Aktivering av nettleserbufring lagrer de statiske ressursene i nettbufferen til klientdatamaskinen. Neste gang brukeren går inn på nettstedet, lastes det meste av det statiske innholdet fra brukerens egen nettbuffer. Disse to metodene øker hastigheten på applikasjonen dramatisk.

Aktiver nettstedet.

sudo ln -s /etc/nginx/sites-available/orocrm /etc/nginx/sites-enabled/orocrm

Sjekk Nginx-konfigurasjonsfilen for eventuelle feil.

sudo nginx -t

Utgangen skal se slik ut.

user@vultr:/usr/share/nginx/orocrm$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Gi eierskapet til OroCRM-filene til Nginx-brukeren.

sudo chown -R www-data:www-data /usr/share/nginx/orocrm

Start Nginx på nytt for å bruke den nye konfigurasjonen.

sudo systemctl restart nginx

Du kan nå få tilgang til applikasjonen på http://crm.example.com. Logg inn med administratoren usernameog passworddu har satt under installasjonen.

Sett opp planlagte oppgaver og bakgrunnsjobber

For å kjøre de planlagte oppgavene automatisk kan du legge til en Cron-jobboppføring. Åpne crontab.

sudo crontab -e

Legg til følgende linje i filen.

*/1 * * * * /usr/bin/php /usr/share/nginx/orocrm/app/console oro:cron --env=prod > /dev/null

Dette vil kjøre cron-jobben hvert minutt slik at de planlagte oppgavene som e-postkøer behandles tidligst.

Du må også konfigurere Supervisor for å kjøre Message Queue-tjenesten. Det kreves at minst én prosess kjører til enhver tid for at en forbruker skal behandle meldingene. En forbruker kan normalt avbryte meldingsprosessen på mange måter. For å sikre at tjenesten kjører kontinuerlig, vil vi bruke veiledertjenesten. Vi vil konfigurere Supervisor til å kjøre fire prosesser parallelt. Hvis noen av de fire prosessene stoppes av en eller annen grunn, vil Supervisor prøve å starte den på nytt.

Installer Supervisor.

sudo apt -y install supervisor

Opprett en ny Supervisor-konfigurasjonsfil.

sudo nano /etc/supervisor/conf.d/orocrm.conf

Legg til følgende linjer i filen.

[program:oro_message_consumer]
command=/usr/bin/php /usr/share/nginx/orocrm/app/console --env=prod --no-debug oro:message-queue:consume
process_name=%(program_name)s_%(process_num)02d
numprocs=4
autostart=true
autorestart=true
startsecs=0
user=www-data
redirect_stderr=true

Start og aktiver Supervisor for å starte automatisk ved oppstart.

sudo systemctl restart supervisor
sudo systemctl enable supervisor

Du kan se statusen til prosessene ved å kjøre følgende.

sudo supervisorctl status

Du bør se at prosessene kjører.

user@vultr:/usr/share/nginx/orocrm$ sudo supervisorctl status
oro_message_consumer:oro_message_consumer_00   RUNNING   pid 20809, uptime 0:00:01
oro_message_consumer:oro_message_consumer_01   RUNNING   pid 20808, uptime 0:00:01
oro_message_consumer:oro_message_consumer_02   RUNNING   pid 20807, uptime 0:00:01
oro_message_consumer:oro_message_consumer_03   RUNNING   pid 20806, uptime 0:00:01

OroCRM er nå installert på serveren din. Du kan nå bruke applikasjonen til å administrere rutineoppgavene til organisasjonen din. For å lære mer om OroCRM, kan du besøke dets offisielle nettsted .


Leave a Comment

Hvordan sette opp en Tekkit Classic Server på Ubuntu 16.10

Hvordan sette opp en Tekkit Classic Server på Ubuntu 16.10

Bruker du et annet system? Hva er Tekkit Classic? Tekkit Classic er en modpack for spillet alle kjenner og elsker; Minecraft. Den inneholder noe av ver

Opprette en Jekyll-blogg på Ubuntu 16.04

Opprette en Jekyll-blogg på Ubuntu 16.04

Bruker du et annet system? Jekyll er et flott alternativ til WordPress for blogging eller deling av innhold. Det krever ingen databaser, og det er veldig enkelt, jeg

Hvordan installere og konfigurere PHP 7.0 eller PHP 7.1 på Ubuntu 16.04

Hvordan installere og konfigurere PHP 7.0 eller PHP 7.1 på Ubuntu 16.04

PHP og relaterte pakker er de mest brukte komponentene når du distribuerer en webserver. I denne artikkelen vil vi lære hvordan du setter opp PHP 7.0 eller PHP 7.1 o

Slik installerer du Squid Proxy på CentOS

Slik installerer du Squid Proxy på CentOS

Squid er et populært, gratis Linux-program som lar deg lage en webproxy for videresending. I denne veiledningen vil du se hvordan du installerer Squid på CentOS for å gjøre deg om

Slik installerer du Lighttpd (LLMP Stack) på CentOS 6

Slik installerer du Lighttpd (LLMP Stack) på CentOS 6

Introduksjon Lighttpd er en apachegaffel som har som mål å være mye mindre ressurskrevende. Den er lett, derav navnet, og er ganske enkel å bruke. Installer

Sette opp en Yii-applikasjon på Ubuntu 14.04

Sette opp en Yii-applikasjon på Ubuntu 14.04

Yii er et PHP-rammeverk som lar deg utvikle applikasjoner raskere og enklere. Det er enkelt å installere Yii på Ubuntu, som du vil lære nøyaktig

Sett opp din egen DNS-server på Debian/Ubuntu

Sett opp din egen DNS-server på Debian/Ubuntu

Denne opplæringen forklarer hvordan du setter opp en DNS-server ved å bruke Bind9 på Debian eller Ubuntu. Bytt ut ditt-domenenavn.com gjennom hele artikkelen. På th

Konfigurering av statisk nettverk og IPv6 på CentOS 7

Konfigurering av statisk nettverk og IPv6 på CentOS 7

VULTR har nylig gjort endringer på sin side, og alt skal nå fungere bra ut av boksen med NetworkManager aktivert. Skulle du ønske å deaktivere

Endring av Icinga2 for å bruke hoved-/klientmodell på CentOS 6 eller CentOS 7

Endring av Icinga2 for å bruke hoved-/klientmodell på CentOS 6 eller CentOS 7

Icinga2 er et kraftig overvåkingssystem, og når det brukes i en master-klient-modell, kan det erstatte behovet for NRPE-baserte overvåkingskontroller. Mester-klienten

Sett opp Red5 Media Server på Ubuntu 16.04

Sett opp Red5 Media Server på Ubuntu 16.04

Bruker du et annet system? Red5 er en åpen kildekode medieserver implementert i Java som lar deg kjøre Flash flerbrukerapplikasjoner som live streamin

Kompiler og installer Nginx med PageSpeed-modulen på Debian 8

Kompiler og installer Nginx med PageSpeed-modulen på Debian 8

I denne artikkelen vil vi se hvordan du kompilerer og installerer Nginx mainline fra de offisielle kildene til Nginx med PageSpeed-modulen, som lar deg t

Hvordan installere Apache Cassandra 3.11.x på Ubuntu 16.04 LTS

Hvordan installere Apache Cassandra 3.11.x på Ubuntu 16.04 LTS

Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy

Slik installerer du Apache Cassandra 3.11.x på CentOS 7

Slik installerer du Apache Cassandra 3.11.x på CentOS 7

Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy

Hvordan installere Vanilla Forum på Ubuntu 16.04

Hvordan installere Vanilla Forum på Ubuntu 16.04

Bruker du et annet system? Vanilla forum er en åpen kildekode-forumapplikasjon skrevet i PHP. Det er en fullt tilpassbar, enkel å bruke og støtter ekstern

Hvordan installere Kanboard på Ubuntu 18.04 LTS

Hvordan installere Kanboard på Ubuntu 18.04 LTS

Bruker du et annet system? Introduksjon Kanboard er et gratis og åpen kildekodeprogram for prosjektledelse som er designet for å forenkle og visualisere

Hvordan installere Kanboard på Debian 9

Hvordan installere Kanboard på Debian 9

Bruker du et annet system? Introduksjon Kanboard er et gratis og åpen kildekodeprogram for prosjektledelse som er designet for å forenkle og visualisere

Hvordan installere Gitea på Debian 9

Hvordan installere Gitea på Debian 9

Bruker du et annet system? Gitea er et alternativt åpen kildekode, selvdrevet versjonskontrollsystem drevet av Git. Gitea er skrevet på Golang og er

Hvordan installere Gitea på Ubuntu 18.04

Hvordan installere Gitea på Ubuntu 18.04

Bruker du et annet system? Gitea er et alternativt, selvdrevet versjonskontrollsystem med åpen kildekode drevet av git. Gitea er skrevet på Golang og er

Hvordan installere Thelia 2.3 på Debian 9

Hvordan installere Thelia 2.3 på Debian 9

Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i

Hvordan installere MODX Revolution på en Ubuntu 16.04 LAMP VPS

Hvordan installere MODX Revolution på en Ubuntu 16.04 LAMP VPS

Bruker du et annet system? MODX Revolution er et raskt, fleksibelt, skalerbart, gratis og åpen kildekode, enterprise-grade Content Management System (CMS) skrevet i

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer