Odooは、世界で最も人気のあるオールインワンのビジネスソフトウェアです。 CRM、Webサイト、eコマース、請求、会計、製造、倉庫、プロジェクト管理、在庫など、すべてシームレスに統合されたさまざまなビジネスアプリケーションを提供します。
このチュートリアルでは、CentOS7マシンのPython仮想環境内のソースからOdoo12をインストールする方法を示します。
前提条件#
チュートリアルを続行する前に、sudo権限を持つユーザーとしてログインしていることを確認してください。
Python 3.6とOdooの依存関係をインストールする#
Software Collections(SCL)リポジトリからPython3.6パッケージをインストールします。
SCLを有効にすることで、コアリポジトリでは利用できない新しいバージョンのプログラミング言語とサービスにアクセスできるようになります。
次のコマンドを使用して、EPELおよびSCLリポジトリを有効にします。
sudo yum install epel-release centos-release-scl
リポジトリを有効にしたら、Python3.6をインストールしてOdooの依存関係を構築するために必要なすべてのツールをインストールします。
sudo yum install rh-python36 git gcc wget nodejs-less libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel
インストール中に、GPGキーを受け入れるように求められます。
Odooユーザーの作成#
ホームディレクトリ/opt/odoo
を使用して新しいシステムユーザーとグループを作成します Odooサービスを実行します:
sudo useradd -m -U -r -d /opt/odoo12 -s /bin/bash odoo12
ユーザーには好きな名前を付けることができます。同じ名前のPostgreSQLユーザーを作成するようにしてください。 PostgreSQLのインストールと構成#
この記事を書いている時点で、CentOSリポジトリから入手できるPostgreSQLの最新バージョンはPostgreSQLバージョン9.2であり、Odooによって公式にサポートされていません。
PostgreSQL10は公式のPostgreSQLリポジトリからインストールします。
PostgreSQLリポジトリを有効にすることから始めます:
sudo yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
PostgreSQLサーバーをインストールし、新しいPostgreSQLデータベースクラスターを作成します。
sudo yum install postgresql10-server postgresql10-devel
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
インストールが完了したら、PostgreSQLサービスを有効にして開始します。
sudo systemctl enable postgresql-10
sudo systemctl start postgresql-10
以前に作成したシステムユーザーと同じ名前のPostgreSQLユーザーを作成します。この場合はodoo12
:
sudo su - postgres -c "createuser -s odoo12"
Wkhtmltopdfをインストールします#
wkhtmltox
packageは、HTMLをPDFやさまざまな画像形式にレンダリングできるオープンソースのコマンドラインツールのセットを提供します。 PDFレポートを印刷するには、wkhtmltopdf
が必要です。 道具。 Odooの推奨バージョンは0.12.1
です。 これは、CentOS7の公式リポジトリでは利用できません。
次のwgetコマンドを使用して推奨バージョンをダウンロードします。
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.1/wkhtmltox-0.12.1_linux-centos7-amd64.rpm
ダウンロードが完了したら、rpm
をインストールします 次のように入力してパッケージ化します:
sudo yum localinstall wkhtmltox-0.12.1_linux-centos7-amd64.rpm
Odoo 12のインストールと構成#
インストールプロセスを開始する前に、必ずユーザー「odoo12」に切り替えてください。
sudo su - odoo12
OdooGitHubリポジトリからOdoo12ソースコードのクローンを作成することから始めます:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo12/odoo
ソフトウェアコレクションを有効にして、Python 3.6バイナリにアクセスできるようにします:
scl enable rh-python36 bash
次のコマンドを使用して、Odooインストール用の新しいPython仮想環境を作成します。
cd /opt/odoo12
python3 -m venv venv
環境をアクティブ化する:
source venv/bin/activate
必要なすべてのPythonモジュールをインストールします:
pip3 install -r odoo/requirements.txt
インストール中にコンパイルエラーが発生した場合は、Install Python 3.6 and Odoo Dependencies
にリストされている必要な依存関係をすべてインストールしたことを確認してください。 セクション。 インストールが完了したら、次のコマンドを使用して環境を非アクティブ化します。
deactivate
カスタムアドオン用の新しいディレクトリを作成します:
mkdir /opt/odoo12/odoo-custom-addons
sudoユーザーに戻ります:
exit
次に、テキストエディタを開き、次の構成ファイルを作成します。
sudo nano /etc/odoo12.conf
/etc/odoo12.conf [options]
; This is the password that allows database operations:
admin_passwd = superadmin_passwd
db_host = False
db_port = False
db_user = odoo12
db_password = False
addons_path = /opt/odoo12/odoo/addons, /opt/odoo12/odoo-custom-addons
ファイルを保存して閉じます。
superadmin_passwd
を変更することを忘れないでください より安全なものに。 systemdユニットファイルを作成します#
Odooをサービスとして実行するために、ユニットファイルを作成します。
テキストエディタを開き、odoo12.service
という名前のファイルを作成します /etc/systemd/system/
内 ディレクトリ:
sudo nano /etc/systemd/system/odoo12.service
次のコンテンツを貼り付けます:
/etc/systemd/system/odoo12.service[Unit]
Description=Odoo12
Requires=postgresql-10.service
After=network.target postgresql-10.service
[Service]
Type=simple
SyslogIdentifier=odoo12
PermissionsStartOnly=true
User=odoo12
Group=odoo12
ExecStart=/usr/bin/scl enable rh-python36 -- /opt/odoo12/venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
ファイルを保存してエディタを閉じます。
新しいユニットファイルを作成したことをSystemdに通知します:
sudo systemctl daemon-reload
次のコマンドを実行して、Odooサービスを開始して有効にします。
sudo systemctl enable odoo12
sudo systemctl start odoo12
次のコマンドでサービスステータスを確認できます:
sudo systemctl status odoo12
● odoo12.service - Odoo12
Loaded: loaded (/etc/systemd/system/odoo12.service; disabled; vendor preset: disabled)
Active: active (running) since Tue 2018-10-30 16:35:09 UTC; 6s ago
Main PID: 24649 (scl)
CGroup: /system.slice/odoo12.service
├─24649 /usr/bin/scl enable rh-python36 -- /opt/odoo12/venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.conf
├─24650 /bin/bash /var/tmp/scldyaa9h
└─24653 /opt/odoo12/venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.conf
Odooサービスによってログに記録されたメッセージを確認したい場合は、以下のコマンドを使用できます。
sudo journalctl -u odoo12
ブラウザを開き、次のように入力します:http://<your_domain_or_IP_address>:8069
インストールが成功すると、次のような画面が表示されます。
ページにアクセスできない場合は、ファイアウォールがポート8069
をブロックしている可能性があります 。
次のコマンドを使用して、必要なポートを開きます。
sudo firewall-cmd --permanent --zone=public --add-port=8069/tcp
sudo firewall-cmd --reload