OroCRMは、マルチチャネルの観点からeコマースおよびマーケティングチームを完全に対象としたオープンソースのカスタマーリレーションシップマネージャー(CRM)プラットフォームです。それは完全にカスタマイズ可能であり、多くの機能を提供するエンタープライズ対応のCRMアプリケーションです。 PHP Symfonyフレームワーク上に構築されており、MySQLを使用してデータを保存します。 OroCRMには、Community Edition(CE)とEnterprise Edition(EE)の2つのエディションがあります。 Magentoや他のソリューションなどの他のeコマースプラットフォームと簡単に統合できます。
このチュートリアルでは、Ubuntu16.04にOroCRMをインストールする方法を学習します。
- Ubuntu16.04を実行しているサーバー。
- sudo権限を持つroot以外のユーザー。
まず、システムを最新バージョンに更新する必要があります。これは、次のコマンドで実行できます。
sudo apt-get update -y
sudo apt-get upgrade -y
システムが更新されたら、システムを再起動してすべての変更を適用します。次に、次のコマンドを使用して、必要なパッケージをシステムにインストールします。
sudo apt-get install git curl unzip wget -y
LEMPサーバーをインストールする
開始する前に、LEMP(Nginx、MariaDB、PHP7)をシステムにインストールする必要があります。
まず、次のコマンドを使用してNginxをインストールします。
sudo apt-get install nginx -y
Nginxがインストールされたら、次のコマンドを使用してNginxサービスを開始し、起動時に開始できるようにします。
sudo systemctl start nginx
sudo systemctl enable nginx
デフォルトでは、MariaDBとPHPの最新バージョンはUbuntu16.04では利用できません。そのため、そのためのリポジトリを追加する必要があります。
まず、次のコマンドを使用してMariaDBリポジトリを追加します。
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'
次に、次のコマンドを使用してPHPリポジトリを追加します。
sudo add-apt-repository ppa:ondrej/php
次に、次のコマンドでリポジトリを更新します。
sudo apt-get update -y
リポジトリが更新されたら、次のコマンドを実行してMariaDBとPHP7をインストールします。
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
次に、タイムゾーンを設定し、php.iniファイルのメモリ制限を増やす必要があります:
sudo nano /etc/php/7.0/cli/php.ini
次の行を変更します:
date.timezone = Asia/Kolkata
終了したら、ファイルを保存して閉じます。
sudo nano /etc/php/7.0/fpm/php.ini
次の行を変更します:
memory_limit = 1024M
終了したら、ファイルを保存して閉じます。
次に、MariaDBとPHP-FPMサービスを開始し、次のコマンドを使用して起動時に開始できるようにします。
sudo systemctl start mysql
sudo systemctl enable mysql
sudo systemctl start php7.0-fpm
sudo systemctl enable php7.0-fpm
OroCRM用のMariaDBの構成
デフォルトでは、MariaDBのインストールは保護されていないため、最初にMariaDBを保護する必要があります。 mysql_secure_installationスクリプトを実行することで保護できます:
sudo mysql_secure_installation
以下に示すように、すべての質問に答えてください。
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
次に、MariaDBシェルにログインし、OroCRMのデータベースとユーザーを作成します。
mysql -u root -p
ルートパスワードを入力してEnterキーを押し、次のコマンドでデータベースとユーザーを作成します。
MariaDB [(none)]> CREATE DATABASE orodb;
MariaDB [(none)]> CREATE USER 'orouser'@'localhost' IDENTIFIED BY 'password';
次に、次のコマンドを使用してOroCRMデータベースに特権を付与します。
MariaDB [(none)]> GRANT ALL PRIVILEGES ON orodb.* TO 'orouser'@'localhost';
次に、FLUSH PRIVILEGESコマンドを実行して、特権テーブルがMariaDBによって再ロードされるようにします。
MariaDB [(none)]> FLUSH PRIVILEGES;
最後に、MariaDBシェルを終了します:
MariaDB [(none)]> EXIT
MariaDBを構成したら、次のステップに進むことができます。
Node.jsとComposerをインストールします
また、Node.jsとComposerをシステムにインストールする必要があります。 Node.jsはJavaScriptをコンパイルするためにOroCRMによって使用され、ComposerはPHPの依存関係をインストールするために使用されるためです。
まず、次のコマンドを使用してNode.jsリポジトリを追加します。
sudo curl --silent --location https://deb.nodesource.com/setup_8.x | sudo bash -
次に、次のコマンドを使用してNode.jsとComposerをインストールします。
sudo apt-get install nodejs -y
sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
sudo php composer-setup.php
次に、次のコマンドを使用して、Composerを/ usr/binディレクトリにコピーします。
sudo cp composer.phar /usr/bin/composer
次のコマンドを使用して、Composerに必要な権限を付与します。
sudo chmod 755 /usr/bin/composer
OroCRMをインストール
まず、Gitリポジトリから最新バージョンのOroCRMをダウンロードする必要があります。これは、次のコマンドで実行できます。
cd /var/www/html
sudo git clone -b 2.4 https://github.com/oroinc/crm-application.git orocrm
次に、ディレクトリをorocrmに変更し、次のコマンドを使用してPHPに必要な依存関係をインストールします。
cd orocrm
sudo composer install --prefer-dist --no-dev
インストール中に、データベース名、データベースのユーザー名とパスワード、データベースホストなどのデータベースの詳細を次のように指定する必要があります。
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):
次に、次のコマンドを実行してアプリケーションをインストールします。
sudo php app/console oro:install --env=prod
インストール中に、管理者アカウントの詳細を提供する必要があります:
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.
次に、次のコマンドを使用してAPIドキュメントキャッシュをウォームアップします。
sudo php app/console oro:api:doc:cache:clear
OroCRM用にNginxを構成する
次に、OroCRM用のNginx仮想ホストファイルを作成する必要があります。これは、次のコマンドで実行できます。
sudo nano /etc/nginx/sites-available/orocrm
次の行を追加します:
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; }
終了したらファイルを保存して閉じ、次のコマンドでNginx仮想ホストを有効にします。
sudo ln -s /etc/nginx/sites-available/orocrm /etc/nginx/sites-enabled/orocrm
次に、次のコマンドを使用して、構成エラーがないかNginxを確認します。
sudo nginx -t
次の出力が表示されます。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
次に、orocrmディレクトリに必要な権限を付与し、Nginxを再起動します:
sudo chown -R www-data:www-data /var/www/html/orocrm>
sudo chmod -R 777 /var/www/html/orocrm
sudo systemctl restart nginx
これでOroCRMがインストールされました。次は、OroCRMWebインターフェイスにアクセスします。
Webブラウザーを開き、URL htttp://example.comを入力します 、以下に示すように、OroCRMログインページにリダイレクトされます。
管理者のユーザー名とパスワードを入力し、ログインをクリックします ボタンをクリックすると、次の画像にOroCRMダッシュボードが表示されます。
おめでとう! OroCRMがUbuntu16.04サーバーにインストールされました。