如何在 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 设置界面。