安装 Odoo 准备工作包
Odoo ERP 需要以下软件包。
这些软件包在标准 yum 存储库中可用,可以使用 dnf 命令进行安装。
# dnf install -y git gcc redhat-rpm-config libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel
libsass 包在标准 yum 存储库中不可用,但可以使用 pip3(Python 包管理器)命令安装。
# pip3 install libsass WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.->->->->-> Requirement already satisfied: libsass in /usr/local/lib64/python3.6/site-packages Requirement already satisfied: six in /usr/lib/python3.6/site-packages (from libsass) Installing collected packages: libsass Successfully installed libsass-0.20.1
Odoo 是一套一体化的业务管理软件工具,包括 CRM、电子商务、计费、会计、制造、仓库、项目管理和库存管理等等。
在本文中,我们将学习如何在 CentOS/RHEL 8 上安装它。
访问 Odoo 商务套件
在 Web 浏览器中打开 URL http://odoo-01.onitroad.com:8069/。
提供所需的参数,Odoo 将根据给定的参数在 PostgreSQL 服务器中创建其数据库。
配置成功后,浏览器将被重定向到 Odoo 仪表板。
在 CentOS/RHEL 8 上安装 WKHTMLTOX
wkhtmltox 是一个免费的开源命令行工具,用于将 HTML 呈现为 PDF 或者其他流行格式。
wkhtmltox 完全无头运行,不需要显示或者显示服务
你可以从他们的官方下载页面下载 wkhtmltox RPM 或者从 GitHub 下载 wkhtmltox 的源代码。
执行以下 Linux 命令下载 wkhtmltox 。
# cd /tmp # ``` wkhtmltox RPM 已下载。 现在使用 dnf 命令将其安装在 Linux 操作系统上。 ``` sh # dnf localinstall -y wkhtmltox-0.12.6-1.centos8.x86_64.rpm
创建一个 Systemd 服务单元
要在系统启动期间启用 Odoo 服务器的自动启动,我们需要创建一个 Systemd 服务单元。
# vi /etc/systemd/system/odoo.service
在此文件中添加以下指令。
[Unit] Description=Odoo Requires=postgresql.service After=network.target postgresql.service [Service] Type=simple SyslogIdentifier=odoo PermissionsStartOnly=true User=odoo Group=odoo ExecStart=/opt/odoo/venv/bin/python3 /opt/odoo/odoo/odoo-bin -c /etc/odoo.conf StandardOutput=journal+console [Install] WantedBy=multi-user.target
启用并启动 Odoo 服务。
# systemctl enable --now odoo.service Created symlink /etc/systemd/system/multi-user.target.wants/odoo.service -> /etc/systemd/system/odoo.service.
在 Linux 上安装 Python 编程语言
Odoo 是用 Python 编程语言编写的。
因此,我们必须在我们的 Linux 服务器中添加 Python 语言支持。
可以使用 dnf 命令从标准 yum 存储库安装 Python 软件包。
# dnf install -y python36 python36-devel
为 Odoo 商务套件创建 Linux 用户
为 Odoo 商务套件创建一个 Linux 用户。
该用户不能用于 Odoo 软件中的身份验证目的,但仅用于拥有 Odoo 软件文件和进程。
# cd # useradd -r -m -U -s /bin/bash -d /opt/odoo odoo
在 CentOS/RHEL 8 上安装 Odoo ERP
切换到 odoo 用户开始安装 Odoo ERP。
# su - odoo $
使用 git 命令将 Odoo 源代码从 GitHub 克隆到本地 Linux 服务器。
我们正在使用“--branch 14.0”,因为我们正在安装 Odoo 14,这是撰写本文时的最新版本。
如果我们想安装其他版本的 Odoo,我们可以使用不同的编号。
$ git clone https://www.github.com/odoo/odoo \ > --depth 1 \ > --branch 14.0 \ > /opt/odoo/odoo Cloning into '/opt/odoo/odoo'... warning: redirecting to https://github.com/odoo/odoo.git/ remote: Enumerating objects: 29594, done. remote: Counting objects: 100% (29594/29594), done. remote: Compressing objects: 100% (23798/23798), done. remote: Total 29594 (delta 9178), reused 12760 (delta 4687), pack-reused 0 Receiving objects: 100% (29594/29594), 127.59 MiB | 163.00 KiB/s, done. Resolving deltas: 100% (9178/9178), done. Checking out files: 100% (26075/26075), done.
为 Odoo 软件创建并激活 Python 虚拟环境。
$ cd ~ $ python3 -m venv venv $ source venv/bin/activate (venv) $
使用以下命令升级 pip3(Python 包管理器)。
(venv) $ pip3 install --upgrade pip Installing collected packages: pip Found existing installation: pip 9.0.3 Uninstalling pip-9.0.3: Successfully uninstalled pip-9.0.3 Successfully installed pip-20.2.4->
所有必需的 Python 库都列在 Odoo 软件目录中的 requirements.txt 文件中。
我们可以将此文件与 pip3 命令一起使用,一次性安装所有这些库。
(venv) $ pip3 install -r odoo/requirements.txt
成功安装 Odoo 要求后,停用 Python 虚拟环境。
(venv) $ deactivate $
安装 EPEL Yum 存储库
一些 odoo 准备工作由 EPEL(企业 Linux 的另外软件包)yum 存储库提供。
因此,我们必须先安装它,然后再安装其他任何东西。
# dnf install -y epel-release
为新安装的 yum 存储库构建缓存。
# dnf makecache CentOS-8 - AppStream 2.5 kB/s | 4.3 kB 00:01 CentOS-8 - Base 2.1 kB/s | 3.9 kB 00:01 CentOS-8 - Extras 1.0 kB/s | 1.5 kB 00:01 Extra Packages for Enterprise Linux Modular 8 - 21 kB/s | 97 kB 00:04 Extra Packages for Enterprise Linux 8 - x86_64 363 kB/s | 8.3 MB 00:23 Metadata cache created.
配置 Linux 防火墙
Odoo 商务套件使用默认服务端口 8069/tcp 。
我们必须在 Linux 防火墙中允许此服务端口,以便传入流量可以访问该服务。
# firewall-cmd --permanent --add-port=8069/tcp success # firewall-cmd --reload success
安装 PostgreSQL 数据库服务器
Odoo 使用 PostgreSQL 作为其数据库后端。
我们可以在单独的机器上安装 PostgreSQL 数据库服务器,也可以将其安装在同一台 Linux 服务器上。
可以使用以下 Linux 命令从标准 yum 存储库安装 PostgreSQL。
# dnf install -y @postgresql:12
执行以下 Linux 命令来初始化 PostgreSQL 数据库服务器。
# postgresql-setup --initdb --unit postgresql * Initializing database in '/var/lib/pgsql/data' * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
启用并启动 PostgreSQL 数据库服务。
# systemctl enable --now postgresql.service Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service -> /usr/lib/systemd/system/postgresql.service.
为 Odoo 商务套件创建一个数据库用户。
# su - postgres -c "createuser -s odoo"
安装后配置
创建一个用于安装任何 Odoo 插件的目录。
$ mkdir /opt/odoo/odoo-custom-addons
退出 odoo 用户 shell。
$ exit logout
为 Odoo ERP 创建日志文件并调整文件权限。
# mkdir /var/log/odoo # touch /var/log/odoo/odoo.log # chown -R odoo: /var/log/odoo/
使用 vim 编辑器在 /etc 目录中创建配置文件。
# vi /etc/odoo.conf
在此文件中添加以下指令。
[options] ; This is the password that allows database operations: admin_passwd = Str0ngPa$$word db_host = False db_port = False db_user = odoo db_password = False xmlrpc_port = 8069 logfile = /var/log/odoo/odoo.log logrotate = True addons_path = /opt/odoo/odoo/addons,/opt/odoo/odoo-custom-addons