このチュートリアルでは、CentOS8VPSにOdoo13ERPソフトウェアをインストールする方法を示します。 Odooは、これまでに作成された中で最も人気のあるエンタープライズリソースプランニング(ERP)プラットフォームの1つです。 Pythonを使用して構築され、データベースにPostgresSQLを利用しているため、Odooは100%オープンソースで無料です。 Odooには豊富な機能セットもあります。CRM、POS、Webサイトビルダー、倉庫管理、プロジェクト管理、eコマース、マーケティング、請求と会計、製造など、さまざまなビジネスアプリケーションが付属しています。
Odooアプリは相互に統合されており、ビジネスプロセスを完全に自動化できます。 Odooの主な機能は、コンテンツをすばやく管理できる直感的なインターフェイスとドラッグアンドドロップエディターです。 Odooはサードパーティのモジュールもサポートしているため、正確なニーズに合わせて機能を拡張できます。
インストールから始めましょう。それほど時間はかかりません。
前提条件
- rootアクセスが有効になっているCentOS8VPS(すべてのVPSにrootアクセスがあります)またはsudo権限を持つユーザー。
- 少なくとも2GBのRAM。
SSH経由でログインしてサーバーを更新する
まず、rootユーザーとしてSSH経由でCentOS8VPSにログインする必要があります。
ssh root @ IP_ADDRESS -p PORT_NUMBER
IP_ADRRESSとPORT_NUMBERをVPSの値に置き換えます。 IP_ADDRESSが必要で、PORT_NUMBERはデフォルトで22ですが、設定によって異なる場合があります。
次に、次のコマンドを実行して、VPSにインストールされているすべてのパッケージをアップグレードします。
dnf update -y
すべてのパッケージが更新されたら、システムを再起動して変更を適用します。これにより、Odooインスタンスをインストールするスレートがきれいになります。
必要な依存関係をインストールする
まず、Pythonパッケージとその他のOdoo依存関係をシステムにインストールする必要があります。次のコマンドを使用して、それらすべてをインストールできます。
dnf install python3 python3-devel git gcc redhat-rpm-config libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel curl unzip -y
すべてのパッケージがインストールされたら、システムにwkhtmltopdfパッケージをインストールする必要があります。 Wkhtmltopdfは、HTML形式をPDFに変換して、OdooがPDFレポートを印刷できるようにするために使用できるオープンソースツールです。
次のコマンドを実行してインストールできます:
dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpm
終了したら、次のステップに進むことができます。
PostgreSQLのインストールと構成
OdooはPostgreSQLを使用してデータを保存します。次のコマンドを使用してPostgreSQLサーバーをインストールできます。
dnf install postgresql postgresql-server postgresql-contrib -y
インストールが完了したら、次のコマンドを使用してデータベースを初期化します。
postgresql-setup initdb
次の出力が得られるはずです:
*データベースを'/var / lib / pgsql /data'に初期化しています
*初期化され、ログは/var/lib/pgsql/initdb_postgresql.logにあります
次に、次のコマンドを使用してPostgreSQLサービスを開始し、起動時に開始できるようにします。
systemctl start postgresql
systemctl enable postgresql
次に、PostgreSQLシェルにログインし、次のコマンドを使用して新しいPostgreSQLユーザーを作成します。
su --postgres -c "createuser -s odoo13"
Odoo13のインストールと構成
開始する前に、CentOSで別のユーザーを作成します。このユーザーを使用してOdooサービスを実行します。
useradd -m -U -r -d / opt / odoo13 -s / bin / bash odoo13
注 :ユーザー名がPostgreSQLユーザーと同じである必要があります。
次に、odoo13ユーザーでログインし、GitHubリポジトリからOdoo13をダウンロードします。
su --odoo13
git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 / opt / odoo13 / odoo
次の出力が表示されます。
'/ opt / odoo13 /odoo'にクローンを作成しています...
警告:https://github.com/odoo/odooにリダイレクトしています.git /
リモート:オブジェクトの列挙:28242、完了。
リモート:オブジェクトのカウント:100%(28242/28242)、完了
リモート:オブジェクトの圧縮:100%(23893/23893) 、完了。
オブジェクトの受信:96%(27370/28242)、110.95 MiB | 13.39 MiB / s
リモート:合計28242(delta 8481)、再利用10433(delta 3462)、パック再利用0
受信オブジェクト:100%(28242/28242)、120.16 MiB | 9.46 MiB / s、完了。
デルタの解決:100%(8481/8481)、完了。
ファイルのチェックアウト:100%(25288/25288)、完了。
次に、現在の作業ディレクトリを / opt / odoo13
に変更します 次のコマンドを使用して、新しいPython仮想環境を作成します。
cd / opt / odoo13
python3 -m venv odooenv
次に、次のコマンドを使用して仮想環境をアクティブ化します。
source odooenv / bin / activate
それが完了したら、次のコマンドを使用して、必要なすべてのPythonモジュールをインストールします。
pip3 install -r odoo / requirements.txt
すべてのモジュールをインストールした後、次のコマンドを使用して環境を非アクティブ化します。
非アクティブ化
次に、カスタムアドオンを保存するための新しいディレクトリを作成します。
mkdir / opt / odoo13 / odoo-custom-addons
そこから、次のコマンドを使用してOdoo13ユーザーを終了します。
exit
最後に、データベースの詳細、マスターパスワード、アドオンパスを使用して新しいOdoo13構成ファイルを作成します。
nano /etc/odoo13.conf
次の行をファイルに追加します。
[options]
admin_passwd =your-secure-password
db_host =False
db_port =False
db_user =odoo13
db_password =False
addons_path =/ opt / odoo13 / odoo / addons、/ opt / odoo13 / odoo-custom-addons
強力なパスワードを設定してください。ファイルを保存して閉じます。
Odoo13のSystemdユニットファイルを作成する
systemdを使用してOdooインスタンスを簡単に開始および停止すると、非常に便利です。この手順は必須ではありませんが、優れた生活の質の機能が追加され、Odooの管理がはるかに簡単になります。
次のコマンドでサービスを作成できます:
nano /etc/systemd/system/odoo13.service
ファイルを開き、次の行を追加します。
[Unit]
Description =Odoo13
Requireds =postgresql.service
After =network.target postgresql.service
[Service]
Type =simple
SyslogIdentifier =odoo13
PermissionsStartOnly =true
User =odoo13
Group =odoo13
ExecStart =/ opt / odoo13 / venv / bin / python3 / opt / oodo13 / odoo / odoo -bin -c /etc/odoo13.conf
StandardOutput =journal + console
[Install]
WantedBy =multi-user.target
ファイルを保存して閉じてから、次のコマンドを使用してsystemdデーモンをリロードします。
systemctlデーモン-リロード
次に、Odoo 13サービスを開始し、次のコマンドを使用して起動時に開始できるようにします。
systemctl start odoo13
systemctl enable odoo13
次のコマンドを使用して、Odoo13のステータスを確認できます。
systemctl status odoo13
次の出力が表示されます。
●odoo13.service-Odoo13
ロード済み:ロード済み(/etc/systemd/system/odoo13.service;有効;ベンダープリセット:無効)
アクティブ:Sun 2020-05-24 08:35:45 EDT以降アクティブ(実行中)。 3秒前
メインPID:23874(python3)
タスク:4(制限:25028)
メモリ:60.8M
CGroup:/system.slice/odoo13.service
└─23874/opt/ odoo13 / venv / bin / python3 / opt / odoo13 / odoo / odoo-bin -c /etc/odoo13.conf
5月24日08:35:45centos8systemd [1]:開始Odoo13。
5月24日08:35:46centos8odoo13 [23874]:/opt/odoo13/venv/lib64/python3.6/site-packages/psycopg2/__init__.py:144:UserWarning:psycopg2 whee>
5月24日08:35:46centos8odoo13 [23874]: "" ")
5月24日08:35:46centos8odoo13 [23874]:2020-05-24 12:35:46,29823874情報?odoo:Odooバージョン13.0
May 24 08:35:46 centos8 odoo13 [23874]:2020-05-24 12:35:46,299 23874情報?odoo:/etc/odoo13.confの構成ファイルを使用
5月24日08:35:46centos8odoo13 [23874]:2020-05-24 12:35:46,300 23874情報?odoo:アドオンパス:['/ opt / odoo13 / odoo / odoo / addons'、'/ opt / odoo13 />
5月24日08:35:46centos8odoo13 [23874]:2020-05-24 12:35:46,300 23874情報?odoo:データベース:odoo13 @ default:default
5月24日08 :35:46 ce ntos8 odoo13 [23874]:2020-05-24 12:35:46,893 23874情報? odoo.addons.base.models.ir_actions_report:Wkhtmltopdを使用します>
5月24日08:35:47centos8odoo13 [23874]:2020-05-24 12:35:47,367 23874情報? odoo.service.server:centos8:80で実行されているHTTPサービス(werkzeug)>
1-18 / 18行目(END)
この時点で、Odooはポート8069で実行およびリッスンしています。ブラウザから、OdooのIPとポートを指定することですでにアクセスできます。
Nginxをリバースプロキシとして構成する
NginxをOdooのリバースプロキシとして構成することをお勧めします。これは、毎回ポートを指定しなくてもOdooインスタンスにアクセスできるようにするためです。 Nginxは、カスタマイズ性と汎用性に重点を置いた人気のあるWebサーバーです。
まず、次のコマンドを使用してNginxをインストールします。
dnf install nginx -y
インストールしたら、新しいNginx仮想ホスト構成ファイルを作成します。
nano /etc/nginx/conf.d/odoo13.example.conf
次の行を追加します:
コード>
アップストリームodoo{
サーバー127.0.0.1:8069;
}
アップストリームodoochat{
サーバー127.0.0.1:8072;
}
サーバー{
listen 80;
server_name odoo13.example.com;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
#プロキシヘッダー
proxy_set_header X-Forwarded-Host $ host;
proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $ schema;
proxy_set_header X-Real-IP $ remote_addr;
#ログファイル
access_log /var/log/nginx/odoo13.access.log;
error_log /var/log/nginx/odoo13.error.log;
#longpollリクエストを処理します
location / longpolling {
proxy_pass http:// odoochat;
}
#静的ファイルをキャッシュする
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 / javascr ipt;
gzip on;
}
「example.com」を登録済みのドメイン名に置き換える必要があります。
ファイルを保存して閉じます。次に、 hash_bucket_site
を構成する必要があります Nginxのデフォルト構成ファイル内。
以下に示すように、Nginxのデフォルト構成ファイルを開きます。
nano /etc/nginx/nginx.conf
http{
の行の下に次の行を追加します :
server_names_hash_bucket_size 64;
ファイルを保存して閉じます。次に、次のコマンドを使用して、構文エラーがないかNginxを確認します。
nginx -t
次の出力が得られるはずです:
nginx:構成ファイル/etc/nginx/nginx.confの構文は問題ありません
nginx:構成ファイル/etc/nginx/nginx.confテストは成功しました
最後に、次のコマンドを使用してNginxサービスを開始し、起動時に開始できるようにします。
systemctl start nginx
systemctl enable nginx
次に、プロキシを使用するようにOdooを構成する必要もあります。これを行うには、ファイル /etc/odoo13.conf
を編集します。 :
nano /etc/odoo13.conf
ファイルの最後に次の行を追加します。
proxy_mode =True
ファイルを保存して閉じてから、Odoo13サービスを再起動して変更を実装します。
systemctl restart odoo13
Let'sEncryptを使用してOdoo13を保護
Let’sEncryptSSLを使用してOdooインスタンスを保護することをお勧めします。これは必須の手順ではありませんが、Odooインスタンスに安全な接続を提供します。
まず、システムにCertbotクライアントをインストールして、SSLを管理します。
wget https://dl.eff.org/certbot-auto
mv certbot-auto / usr / local / bin / certbot-auto
chmod 0755 / usr / local / bin / certbot-自動
次に、次のコマンドを実行して、Odoo13WebサイトのSSL証明書を取得してインストールします。 「example.com」を登録済みのドメイン名に置き換えます。
certbot-auto --nginx -d odoo13.example.com
上記のコマンドは、最初に必要なすべての依存関係をサーバーにインストールします。インストールすると、以下に示すように、メールアドレスを入力して
利用規約に同意するよう求められます。
デバッグログを/var/log/letsencrypt/letsencrypt.logに保存
選択したプラグイン:Authenticator nginx、Installer nginx
メールアドレスを入力(緊急の更新とセキュリティ通知に使用)
(キャンセルするには「c」を入力してください):[email protected]
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
利用規約をお読みください
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf。 ACMEサーバーに登録するには
同意する必要があります
https://acme-v02.api.letsencrypt.org/directory
-------------------- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----------------
(A)gree /(C)ancel:A
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----------------
Let's Encryptプロジェクトの創設パートナーであり、Certbotを開発する非営利団体であるElectronic Frontier
Foundationと話し合いますか?
Webの暗号化、EFFニュース、キャンペーン、およびデジタルの自由をサポートする方法について、メールでお知らせします。
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
(Y)es /(N)o:N
選択して、入力を押します 続ける。証明書がインストールされると、次の出力が表示されます。
新しい証明書の取得
次のチャレンジを実行します:
http-01odoo13.example.comのチャレンジ
検証を待っています...
チャレンジのクリーンアップ
仮想ホストへの証明書のデプロイ/etc/nginx/nginx.conf
ポート80のすべてのトラフィックを/etc/nginx/nginx.confのsslにリダイレクトします
---------- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- />おめでとうございます! https://odoo13.example.comが正常に有効になりました。
構成をテストする必要があります:
https://www.ssllabs.com/ssltest/analyze.html?d=odoo13.example。 com
---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --------------------
重要注:
-おめでとうございます!証明書とチェーンは次の場所に保存されています:
/etc/letsencrypt/live/odoo13.example.com/fullchain.pem
キーファイルは次の場所に保存されています:
/ etc /letsencrypt/ live / odoo13.example.com /privkey.pem
証明書は2020-08-22に期限切れになります。将来、この証明書の新しいバージョンまたは微調整されたバージョンを取得するには、「certonly」オプションを指定してもう一度certbot-auto
を実行します。証明書の*すべて*
を非対話的に更新するには、「certbot-autorenew」を実行します。
-Certbotが気に入った場合は、次の方法で作業をサポートすることを検討してください。
ISRGへの寄付/Let'sEncrypt :https://letsencrypt.org/donate
EFFへの寄付:https://eff.org/donate-le
この時点で、Odoo13インスタンスはLet’sEncryptSSLで保護されています。
Odoo13インスタンスにアクセスする
次に、Webブラウザーを開き、URL https://odoo13.example.com
を入力します。 。次のページが表示されます:
データベースの作成をクリックする前に、マスターパスワード、データベースの詳細、電子メール、およびパスワードを入力してください ボタン。次のページにOdoo13ダッシュボードが表示されます。
おめでとうございます。このチュートリアルの手順に注意深く従えば、CentOS8VPSに最新のOdoo13が正常にインストールされます。最初のデータベースを作成して、最新のOdoo13バージョンの使用を開始できます。
もちろん、Odoo VPSホスティングサービスのいずれかを使用している場合は、CentOS8にOdoo13をインストールする必要はありません。その場合は、専門のLinux管理者のチームにOdoo13のインストールと構成を依頼するだけです。彼らは24時間年中無休で利用可能であり、あなたの要求をすぐに処理します。 Odooプラットフォームのインストールから当て推量を排除します。必要なものを教えていただければ、それが実行されます。
PS 。 CentOS8にOdoo13をインストールする方法に関するこの投稿が気に入った場合は、以下の共有ショートカットを使用してソーシャルネットワークで友達と共有するか、コメントセクションに返信を残してください。ありがとう。