ERPNext は、中小企業を対象とした完全に堅牢なERPフレームワークです。経理、CRM、在庫、販売、購入、製造、プロジェクト、人事と給与、ウェブサイト、eコマースなど、さまざまな機能を網羅しており、これらすべてが非常に順応性と拡張性を備えています。
ERPNextはPythonで開発されており、FrappeFrameworkに依存しています。フロントエンドにNode.js、WebサーバーにNginx、キャッシュにRedis、データベースにMariaDBを利用します。
ERPNextは、GNU General PublicLicensev3に基づくオープンソースです。
この記事では、CentOS7にERPNextをインストールする方法を紹介します。 最適化されたERPNextホスティングサーバーの1つで。
前提条件:
サーバーが次の要件を満たしていることを確認してください。
- 2GB以上のRAM
- 2つ以上のCPUコア
- CentOS7のフレッシュインストール
- フルルートアクセス
システムを更新して依存関係をインストールする
SSH経由でサーバーにログインします:
ssh username@server_ip
ERPNextのインストールを開始する前に、システムパッケージを最新バージョンに更新することをお勧めします。
sudo yum update -y
次のコマンドを実行して、開発ツールの依存関係をインストールします。
sudo yum groupinstall -y "Development Tools" sudo yum install python-devel
ERPNextのインストール
ノードJSのインストール
ERPNextはフロントエンドにNodeJSを使用するため、最初に最新バージョンのNodeJSをセットアップする必要があります。執筆時点で、Node.jsの現在のLTSバージョンはバージョン10.xです。
インストールするには、まず次のコマンドを実行して、NodeJSの公式リポジトリをシステムに追加する必要があります。
sudo curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
リポジトリが追加されたら、次のコマンドを実行します。
sudo yum install -y nodejs
確認するには、以下を実行してノードのバージョンを確認します。10.x.xである必要があります:
node --version
スクリプトを使用したERPNextのインストール
幸い、ERPNext開発者は、時間を節約し、ERPNextサーバーの構成に関する問題を回避するための簡単なインストールスクリプトを作成しました。このPythonスクリプトは、前提条件とベンチをインストールし、ERPNextサイトをセットアップします。
ERPNextは、開発と本番の2つの環境でセットアップできます。開発環境の場合、no Nginx installed
ERPNextを手動で起動する必要があります。本番環境の場合、Nginx is installed
プロセスはsupervisor
によって管理されます 。スーパーバイザーについては、このチュートリアルの後半で詳しく説明します。
本番環境でインストールする場合は、Apacheをuninstall Apache
する必要があります。 まず、インストーラースクリプトがNginxをセットアップするためです。 uninstall MariaDB
こともお勧めします 本番環境と開発環境の両方で、インストール中の競合を回避するため。開発環境では、Nginxがインストールされないため、Apacheをインストールして実行したままにしておくのが安全です。
Apacheを停止してアンインストールするには(required for production set up only)
:
sudo systemctl stop httpd sudo yum remove -y httpd httpd-tools apr apr-util
MariaDBを停止してアンインストールするには(recommended for both development and production setup)
:
sudo systemctl stop mariadb sudo yum remove -y mariadb mariadb-server sudo rm -rf /var/lib/mysql /etc/my.cnf
インストールを開始するには、まずwgetを使用して公式スクリプトをダウンロードする必要があります:
wget https://raw.githubusercontent.com/frappe/bench/master/playbooks/install.py
スクリプトには次の3つのパラメータが必要です。
domain = your development/production domain
erp_user = preferred local ERPNext user
bench_name = preferred bench name
開発用インストールの場合は、次のコマンドを入力します。
sudo python install.py --develop --site [domain] --user [erp_user]--bench-name [bench_name] --verbose
本番インストールの場合は、次のコマンドを使用します。
sudo python install.py --production --site [domain] --user [erp_user] --bench-name [bench_name] --verbose
例は次のとおりです。
sudo python install.py --develop --site erp-dev.rosehosting.com --user erpnext --bench-name erpnext-dev --verbose
スクリプトによって実行されるプロセスは次のとおりです。
*すべての前提条件をインストールします
*コマンドラインベースのベンチをインストールします
*新しいベンチをセットアップします–ERPNextファイルが含まれます
*最後に、ベンチに新しいERPNextサイトをセットアップします
インストール中に、スクリプトはデータベースと管理者パスワードを要求します。常に強力なパスワードを使用することを忘れないでください。パスワードは~/passwords.txt
にあります インストール後。
ERPNextの開始
開発環境のセットアップでは、ERPNextアプリケーションを手動で起動する必要があります。 ERPNextアプリケーションはポート8000でリッスンします。
開発
su - [erp_user] cd [bench_name] bench start
これで、次の場所でセットアップにアクセスできます:
http://[domain]:8000 Login: Administrator Password: The one that you input during installation
生産
何もする必要はありません。プロセスはスーパーバイザーによって管理されます。
スーパーバイザーは、Linuxを実行しているシステムのプロセスを監視および制御できるようにするプロセス制御システムです。スーパーバイザーが実行されている場合、スーパーバイザーは起動時にアプリケーションを自動的に起動し、プロセスの失敗を処理します。インストーラースクリプトは、ERPNextアプリケーションのスーパーバイザーを自動的に構成しました。
次のコマンドを使用して、スーパーバイザーによって処理されたプロセスを確認できます。
sudo supervisorctl status all
これで、ポート8000を使用せずにwithout using port 8000
NginxWebサーバーはすでにポート8000のリバースプロキシとして構成されているためです。
ログインすると、ERPNextアプリケーションの初期設定を完了することができます。
もちろん、CentOS7にERPNextをインストールする必要はありません。 CentOSVPSをお持ちの場合。サポートチームにCentOS7にERPNextをインストールするよう依頼するだけです。それらは24時間年中無休で利用可能であり、インストールを支援することができます。
CentOS 7にERPNextをインストールする方法に関するこのブログ投稿を楽しんだ場合は、以下のショートカットを使用してソーシャルネットワークで共有するか、コメントを残してください。また、最新のCentOSを使用している場合は、CentOS8にERPNextをインストールする方法に関する新しい詳細なステップバイステップのチュートリアルがあります。