GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS8にNginxを使用してFlectraビジネス管理ソフトウェアをインストールする方法

Flectraは、CRMシステムとERPシステムを1つのパッケージにまとめたオープンソースの次世代ビジネス管理ソフトウェアです。その目的は、ユーザーがビジネスニーズに応じてシステムを変更できるようにし、ビジネスを拡張するためのツールを簡単に追加できるようにすることです。簡単に言うと、Flectraは包括的なプラットフォームを提供するため、要件に応じて簡単に変更または構成できます。 Flectraは、経理、Eコマース、在庫管理、マーケティング、プロジェクト管理、CRM、レポート、休暇管理など、多くの機能を提供します。

このチュートリアルでは、CentOS8にNginxを使用してFlectraをインストールする方法を示します。

前提条件
  • 4GB以上のRAMを搭載したCentOS8を実行しているサーバー。
  • ルートパスワードはサーバーで構成されています。
はじめに

まず、システムパッケージを最新のものに更新する必要があります。次のコマンドで実行できます:

dnf update -y

すべてのパッケージを更新した後、システムでSELinuxを無効にすることをお勧めします。ファイル/etc/ selinux / configを編集して無効にすることができます:

nano /etc/selinux/config

次の行を変更します:

SELINUX=disabled

ファイルを保存して閉じてから、サーバーを再起動して変更を適用します。

Pythonの依存関係をインストールする

次に、Pythonとその他のFlectraの依存関係をシステムにインストールする必要があります。次のコマンドを実行して、それらすべてをインストールできます。

dnf install python36 python36-devel git gcc wget nodejs libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel -y

すべてのパッケージがインストールされたら、次のコマンドを実行してNode.jsモジュールをインストールします。

npm install -g less

次に、システムにwkhtmltopdfパッケージをインストールする必要もあります。公式ダウンロードページからダウンロードできます:

ダウンロードしたら、次のコマンドを使用してダウンロードしたファイルをインストールします。

dnf localinstall wkhtmltox-0.12.6-1.centos8.x86_64.rpm

完了したら、次のステップに進むことができます。

PostgreSQLをインストール

FlectraはPostgreSQLをデータベースバックエンドとして使用します。したがって、サーバーにインストールする必要があります。次のコマンドでインストールできます:

dnf install postgresql-server -y

PostgreSQLサーバーをインストールした後、次のコマンドを使用してデータベースを初期化します。

postgresql-setup --initdb --unit postgresql

次の出力が得られるはずです:

 * Initializing database in '/var/lib/pgsql/data'
 * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log

次に、PostgreSQLサービスを開始し、次のコマンドを使用してシステムの再起動時に開始できるようにします。

systemctl start postgresql
systemctl enable postgresql

次に、次のコマンドを使用してPostgreSQLサービスのステータスを確認します。

systemctl status postgresql-12

次の出力が得られるはずです:

? postgresql-12.service - PostgreSQL 12 database server
   Loaded: loaded (/usr/lib/systemd/system/postgresql-12.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-08-13 04:39:31 EDT; 7s ago
     Docs: https://www.postgresql.org/docs/12/static/
  Process: 1176 ExecStartPre=/usr/pgsql-12/bin/postgresql-12-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
 Main PID: 1182 (postmaster)
    Tasks: 8 (limit: 12537)
   Memory: 17.3M
   CGroup: /system.slice/postgresql-12.service
           ??1182 /usr/pgsql-12/bin/postmaster -D /var/lib/pgsql/12/data/
           ??1183 postgres: logger   
           ??1185 postgres: checkpointer   
           ??1186 postgres: background writer   
           ??1187 postgres: walwriter   
           ??1188 postgres: autovacuum launcher   
           ??1189 postgres: stats collector   
           ??1190 postgres: logical replication launcher   

Aug 13 04:39:31 centos8 systemd[1]: Starting PostgreSQL 12 database server...
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.136 EDT [1182] LOG:  starting PostgreSQL 12.3 on x86_64-pc-linux-gnu, compiled b>
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.137 EDT [1182] LOG:  listening on IPv6 address "::1", port 5432
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.137 EDT [1182] LOG:  listening on IPv4 address "127.0.0.1", port 5432
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.139 EDT [1182] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.142 EDT [1182] LOG:  listening on Unix socket "/tmp/.s.PGSQL.5432"
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.161 EDT [1182] LOG:  redirecting log output to logging collector process
Aug 13 04:39:31 centos8 postmaster[1182]: 2020-08-13 04:39:31.161 EDT [1182] HINT:  Future log output will appear in directory "log".
Aug 13 04:39:31 centos8 systemd[1]: Started PostgreSQL 12 database server.

次に、Flectra用の新しいPostgreSQLユーザーを作成する必要があります。次のコマンドで作成できます:

su - postgres -c "createuser -s flectra"

終了したら、次のステップに進むことができます。

Flectraをインストール

Flectraをインストールする前に、Flectra用に別のユーザーを作成する必要があります。次のコマンドを使用して作成できます:

useradd -m -U -r -d /opt/flectra -s /bin/bash flectra

注:ユーザー名はPostgreSQLユーザーと同じである必要があります。

次に、Flectraユーザーでログインし、次のコマンドを使用してGitリポジトリからFlectraをダウンロードします。

su - flectra
git clone --depth=1 --branch=1.0 https://gitlab.com/flectra-hq/flectra.git flectra

次に、次のコマンドを使用してFlectraの仮想環境を作成します。

python3 -m venv my-flectra

次に、次のコマンドを使用して仮想環境をアクティブ化します。

source my-flectra/bin/activate

次に、次のコマンドを実行して、すべてのPythonモジュールをインストールします。

pip3 install -r flectra/requirements.txt

すべてのモジュールがインストールされたら、次のコマンドを使用して仮想環境を非アクティブ化します。

deactivate

次に、次のコマンドを使用してFlectraユーザーを終了します。

exit

Flectraを構成する

まず、Flectraアドオン、構成ファイル、およびログ用のディレクトリをいくつか作成する必要があります。次のコマンドで作成できます:

mkdir /opt/flectra/flectra-custom-addons
mkdir /var/log/flectra
mkdir /etc/flectra
touch /var/log/flectra/flectra.log

次に、次のコマンドを使用して、上記のディレクトリの所有権をflectraに変更します。

chown -R flectra:flectra /opt/flectra/flectra-custom-addons
chown -R flectra:flectra /var/log/flectra/
chown -R flectra:flectra /etc/flectra

次に、次のコマンドを使用してFlectra構成ファイルを作成します。

nano /etc/flectra/flectra.conf

次の行を追加します:

[options]
admin_passwd = your-flectra-password
db_host = False
db_port = False
db_user = flectra
db_password = False
logfile = /var/log/flectra/flectra.log
logrotate = True
proxy_mode = True
addons_path = /opt/flectra/flectra/addons, /opt/flectra/flectra-custom-addons

終了したら、ファイルを保存して閉じます。

FlectraのSystemdサービスファイルを作成する

次に、Flectraサービスを管理するためにFlectraのsystemdサービスファイルを作成する必要があります。次のコマンドで作成できます:

nano /etc/systemd/system/flectra.service

次の行を追加します:

[Unit]
Description=flectra
#Requires=postgresql-10.6.service
#After=network.target postgresql-10.6.service

[Service]
Type=simple
SyslogIdentifier=flectra
PermissionsStartOnly=true
User=flectra
Group=flectra
ExecStart=/opt/flectra/my-flectra/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

終了したら、ファイルを保存して閉じます。次に、次のコマンドを使用してsystemdデーモンをリロードします。

systemctl daemon-reload

次に、Flectraサービスを開始し、次のコマンドを使用してシステムの再起動時に開始できるようにします。

systemctl start flectra
systemctl enable flectra

次のコマンドを使用して、Flectraサービスのステータスを確認できるようになりました。

systemctl status flectra

すべてが正常であれば、次の出力が得られるはずです:

? flectra.service - flectra
   Loaded: loaded (/etc/systemd/system/flectra.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-08-13 05:34:15 EDT; 1min 3s ago
 Main PID: 10917 (python3)
    Tasks: 4 (limit: 25028)
   Memory: 57.9M
   CGroup: /system.slice/flectra.service
           ??10917 /opt/flectra/my-flectra/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf

Aug 13 05:34:15 centos8 systemd[1]: Started flectra.

これで、Flectraはポート7073で実行およびリッスンしています。次のコマンドで確認できます:

netstat -plntu | grep 7073

次の出力が表示されます。

tcp        0      0 0.0.0.0:7073            0.0.0.0:*               LISTEN      10917/python3

Flectra用にNginxを構成する

次に、NginxをFlectraのリバースプロキシとして構成する必要があります。したがって、ポート80を使用してFlectraにアクセスできます。

まず、次のコマンドを使用してNginxWebサーバーをインストールします。

dnf install nginx -y

Nginxをインストールした後、Nginxサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start nginx
systemctl enable nginx

次に、Flectra用の新しいNginx仮想ホスト構成ファイルを作成します。

nano /etc/nginx/conf.d/flectra.conf

次の行を追加します:

#flectra server
upstream flectra {
 server 127.0.0.1:7073;
}

server {
   listen 80;
   server_name flectra.your-domain.com;

proxy_read_timeout 720s;
 proxy_connect_timeout 720s;
 proxy_send_timeout 720s;

 # Add Headers for flectra proxy mode
 proxy_set_header X-Forwarded-Host $host;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 proxy_set_header X-Real-IP $remote_addr;

 # log
 access_log /var/log/nginx/flectra.access.log;
 error_log /var/log/nginx/flectra.error.log;

 # Redirect requests to flectra backend server
 location / {
   proxy_redirect off;
   proxy_pass http://flectra;
 }

 # common gzip
 gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
 gzip on;
}

終了したら、ファイルを保存して閉じます。次に、Nginxサービスを再起動して、変更を適用します。

systemctl restart nginx

この時点で、NginxWebサーバーはFlectraにサービスを提供するように構成されています。これで、次のステップに進むことができます。

FlectraWebUIにアクセス

次に、Webブラウザーを開き、URLhttp://flectra.your-domain.comを入力します。次の画面にリダイレクトされます:

構成ファイルで定義したマスターパスワード、データベースの詳細、電子メール、パスワードを入力し、作成をクリックします。 データベース ボタン。次の画面に示すように、Flectraダッシュボードが表示されます。

結論

おめでとう! CentOS 8にNginxを使用してFlectraを正常にインストールしました。これで、独自のFlectraビジネス情報システムをホストし、Flectraの強力なモジュラー設計と多数のアドオンを使用してビジネスを成長させることができます。 Flectraの詳細については、Flectraの公式ドキュメントをご覧ください。


Cent OS
  1. CentOS 7 /RHEL7にNginxを使用してphpMyAdminをインストールする方法

  2. CentOS7にSitemagicCMSをインストールする方法–Nginxを使用

  3. リバースプロキシとしてNginxを使用してCentOS8にFlectraをインストールする方法

  1. CentOS7にNginxを使用してWordPressをインストールする方法

  2. CentOS7にNginxを使用してphpMyAdminをインストールする方法

  3. CentOS7にMyCollabプロジェクト管理ソフトウェアをインストールする方法

  1. CentOS7にNginxを使用してSuiteCRMをインストールする方法

  2. CentOS7にNginxでMediaWikiをインストールする方法

  3. CentOS7にTaiga.ioプロジェクト管理ソフトウェアをインストールする方法