如何在 CentOS 8/RHEL 8 中安装 Odoo

Odoo 是一套开源业务应用程序,可满足您公司的所有需求:CRM,电子商务,会计,库存,销售点,项目管理等。

第一步:更新系统

使用如下命令更新系统:

dnf update

安装 EPEL repository

dnf install epel-release

第二步:安装 Python 软件包和 Odoo 依赖

安装 Python 3

dnf install python36 python36-devel

安装 Odoo 依赖

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

第三步:创建 Odoo 用户

创建一个我们需要运行 Odoo 服务的新系统用户和组。我们将在 /opt/odoo 目录中定义主目录。

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

您可以根据自己的喜好为用户命名,但不要忘记创建一个具有相同名称的 PostgreSQL 用户。

第四步:安装并配置 PostgreSQL

安装 PostgreSQL

dnf install postgresql postgresql-server postgresql-contrib

初始化数据库

/usr/bin/postgresql-setup initdb

启动并启用 PostgreSQL

systemctl start postgresql
systemctl enable postgresql

创建一个新的 PostgreSQL 用户,并使用相同的 Odoo 用户名

su - postgres -c "createuser -s odoo"

第五步:安装 Wkhtmltopdf

Odoo 在运行中需要 wkhtmltopdf 软件包,这是一个开源工具,可以将 HTML 格式转换为 PDF,以便 Odoo 可以打印 PDF 报告。

备注 wkhtmltopdf 软件包在 CentOS 8 官方存储库中不可用,因此我们将使用以下命令下载并安装它:

cd /opt/ && wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
dnf localinstall wkhtmltox-0.12.5-1.centos7.x86_64.rpm

第六步:安装并配置 Odoo

将用户身份切换到 Odoo

su - odoo

从 GitHub 克隆 Odoo

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

创建一个虚拟的环境文件

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

激活虚拟环境

source odoo13-venv/bin/activate

在虚拟环境中,安装 Odoo 安装所需的 Python 模块

pip3 install -r odoo13/requirements.txt

安装 Python 模块后,停用虚拟环境

deactivate && exit

以下几个命令是可选的,如果要为 Odoo 实例使用自定义模块,则可以使用以下命令。最佳做法是在单独的目录中安装自定义 Odoo 模块。因此,我们将为自定义模块创建一个新目录,并将其所有权更改为 odoo 用户。

mkdir /opt/odoo/odoo13-custom-addons
chown odoo: /opt/odoo/odoo13-custom-addons

安装 Odoo 并将其所有权更改为 odoo 用户

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

为新的 Odoo 实例创建一个配置文件。

vi /etc/odoo.conf

将以下行粘贴到文件中:

[options]
; This is the password that allows database operations:
admin_passwd = master_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

master_password 更改为一个更强的密码。

第七步:创建服务单元文件

要管理 Odoo 服务,我们可以创建服务单元文件。

vi /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

重载守护进程

systemctl daemon-reload

启动并启用 odoo13

systemctl start odoo13
systemctl enable odoo13

我们可以运行 status 命令,以便检查新的 Odoo 实例是否处于活动状态并正在运行:

systemctl status odoo13.service

第八步:访问网页界面

新安装的 Odoo 使用默认端口 8069。

http://<your_server_IP_address>:8069

如果安装成功完成,您将可以看到 Odoo 设置界面。

关联文章