CentOS 8にOdoo(オープンソースERPおよびCRM)をインストールする方法


Odooはオープンソースのオールインワンビジネス管理ソフトウェアであり、eコマース、プロジェクト管理、ヘルプデスク、会計、在庫、ウェブサイトビルダーなどのさまざまな用途向けのさまざまなビジネスアプリケーションのスイートが付属しています。

この記事では、CentOS8およびRHEL8にOdoo(オープンソースERPおよびCRM)をインストールする方法を学習します。

ステップ1:システムを更新してEPELリポジトリをインストールする

1. Odooをインストールする最初のステップは、エンタープライズLinux用の追加パッケージのセットを提供するEPELリポジトリーをインストールすることです。ただし、最初に、必ず図のようにシステムを更新してください。

$ sudo dnf update

2.システムの更新が完了したら、図のようにEPELリポジトリーをインストールします。

$ sudo dnf install epel-release

ステップ2:Python3とその他の依存関係をインストールする

3.次に、示されているように、Python3およびOdooに必要なその他の必要な依存関係をインストールします。

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

ステップ3:CentOS8にPostgreSQLをインストールして構成する

4. PostgreSQLは、データを格納するためにさまざまなアプリケーションで使用される無料のオープンソースリレーショナルデータベース管理システムです。 Odoo用のPostgreSQLをインストールする必要があります。これを行うには、コマンドを実行します。

$ sudo dnf install postgresql-server postgresql-contrib

5.次に、新しいPostgreSQLデータベースクラスターを初期化します。

$ sudo postgresql-setup initdb

6.データベースクラスターが初期化されたら、図のようにPostgreSQLを再起動して有効にします。

$ sudo systemctl restart postgresql
$ sudo systemctl enable postgresql

7.データベースが稼働中であることを確認するには、を実行します。

$ sudo systemctl status postgresql

ステップ4:CentOS8にWkhtmltopdfツールをインストールする

8. OdooがPDFレポートを印刷するには、Wkhtmltopdfというパッケージが必要です。これは、HTMLをPDFやその他の画像形式にレンダリングするために使用されます。 rpmパッケージはGithubで入手でき、図のようにインストールできます。

$ sudo dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpm

ステップ5:CentOS8にOdooをインストールして構成する

9.Odooサービスの実行に使用する新しいシステムユーザーを追加します。この図では、Odooというユーザーを作成しますが、任意のユーザー名を自由に選択してください。ホームディレクトリは、/opt/odoo ディレクトリにあります。

$ sudo useradd -m -U -r -s /bin/bash odoo -d /opt/odoo 

10. Odooのインストールを開始するには、最初に上記で作成したOdooユーザーに切り替えます。

$ sudo su - odoo

11.次に、gitリポジトリのクローンを作成します。

$ git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 /opt/odoo/odoo13

12.次に、図のように仮想環境のクローンを作成します。

$ cd /opt/odoo
$ python3 -m venv odoo13-venv

13.仮想環境が作成されたら、次のコマンドを使用して仮想環境をアクティブ化します。

$ source odoo13-venv/bin/activate

ご覧のとおり、プロンプトは次のように変化します。

14.仮想環境内に、Odooのインストールをスムーズに行うために必要なPythonモジュールをインストールします。

$ pip3 install -r odoo13/requirements.txt

15. Pythonモジュールのインストールが完了したら、仮想環境を終了し、sudoユーザーに戻ります。

$ deactivate && exit

16.オプションですが。ベストプラクティスでは、カスタムモジュールを別のディレクトリにインストールする必要があります。そのことを念頭に置いて、カスタムモジュール用のディレクトリの作成に進み、後でディレクトリの所有権を「Odoo」ユーザーに割り当てます。

$ sudo mkdir /opt/odoo/odoo13-custom-addons
$ sudo chown -R odoo:odoo /opt/odoo/odoo13-custom-addons

17.同様に、図のようにカスタムログディレクトリとログファイルを作成します。

$ sudo mkdir /var/log/odoo13
$ sudo touch /var/log/odoo13/odoo.log
$ sudo chown -R odoo:odoo /var/log/odoo13/

18.次に、図のようにOdooのカスタム構成ファイルを作成します。

$ sudo vim /etc/odoo.conf

次の構成を貼り付けて、ファイルを保存します。

[options]
; This is the password that allows database operations:
admin_passwd = strong_password
db_host = False
db_port = False
db_user = odoo
db_password = False
xmlrpc_port = 8069
; longpolling_port = 8072
logfile = /var/log/odoo13/odoo.log
logrotate = True
addons_path = /opt/odoo/odoo13/addons,/opt/odoo/odoo13-custom-addons

必ずstrong_passwordをお好みのパスワードに置き換えてください。

ステップ6:OdooSystemdユニットファイルを作成する

19.次に、Odooのsystemdユニットファイルを作成します。

$ sudo vim /etc/systemd/system/odoo13.service

次の構成を貼り付けて、ファイルを保存します。

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

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

[Install]
WantedBy=multi-user.target

20.ファイルに加えられた新しい変更をsystemdにリロードします。

$ sudo systemctl daemon-reload

21.次に、図のようにOdooを起動して有効にします。

$ sudo systemctl start odoo13
$ sudo systemctl enable odoo13

22. Odooのステータスを確認するには、次のコマンドを実行します。

$ sudo systemctl status odoo13

23. netstatコマンドを使用して、Odooがデフォルトのポートであるポート8069でリッスンしているかどうかを確認することもできます。

$ sudo netstat -pnltu | grep 8069

24.ブラウザでOdooにアクセスできるようにするには、ファイアウォールを越えてポートを開きます。

$ sudo firewall-cmd --add-port=8069/tcp --zone=public --permanent
$ sudo firewall-cmd --reload

ステップ7:OdooのリバースプロキシとしてNginxをインストールする

25.最後に、Odooインスタンスのリバースプロキシとして機能するNginxWebサーバーをインストールします。したがって、次のコマンドを実行します。

$ sudo dnf install nginx

26.次に、新しい仮想ホストファイルを作成します。

$ sudo vim /etc/nginx/conf.d/odoo13.conf

次の構成を図のように貼り付けます。

upstream odoo {
 server 127.0.0.1:8069;
}
server {
    listen 80;
    server_name server-IP;

    access_log /var/log/nginx/odoo13.access.log;
    error_log /var/log/nginx/odoo13.error.log;

        location / {
        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;

        proxy_redirect off;
        proxy_pass http://odoo;
    }
location ~* /web/static/ {
        proxy_cache_valid 200 90m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odoo;
    }
    gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    gzip on;
}

構成ファイルを保存して終了します。

27. NginxWebサーバーを起動して有効にします。

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

28.Nginxが図のように実行されていることを確認します。

$ sudo systemctl status nginx

この時点で、構成はすべて完了です。最後のステップは、Webブラウザーでセットアップを完了することです。

ステップ8:Odooセットアップの完成

29. Webブラウザーを起動し、図のようにサーバーのIPにアクセスします。

http://server-ip/

以下のようなWebページが表示されます。マスターパスワードには、カスタムOdoo構成ファイルを作成するときに手順5で指定したパスワードを使用します。次に、他のすべてのエントリに入力し、[データベースの作成]ボタンをクリックします。

30.これにより、インストール可能なさまざまなアプリケーションを表示するOdooのダッシュボードが表示されます。

これで、今日のチュートリアルは終わりです。このガイドでは、CentOS8にOdooをインストールする方法を学びました。