CentOS 安装 Odoo
一、前言
Odoo(前称OpenERP)是一款开源的企业资源计划(ERP)软件,集成了CRM、网站构建、电子商务、项目管理、会计、库存管理等多种功能模块,本文将详细介绍如何在CentOS上安装和配置Odoo 15。

二、更新系统
在开始之前,首先确保你的系统是最新的,使用以下命令来更新系统的包:
sudo yum update y
如果上述命令失败,则需要配置国内的yum镜像源:
下载网易的base repo文件 wget http://mirrors.163.com/.help/CentOS7Base163.repo 移动repo文件到yum仓库目录 mv CentOS7Base163.repo /etc/yum.repos.d/CentOSBase.repo 清理缓存并生成新的缓存 yum clean all yum makecache 再次更新系统 yum update y
三、安装Python 3
Odoo 15需要Python 3环境,我们可以通过以下步骤安装Python 3:
安装开发工具和依赖库 sudo yum y groupinstall "Development Tools" sudo yum y install zlibdevel bzip2devel openssldevel ncursesdevel sqlitedevel readlinedevel tkdevel gdbmdevel db4devel libpcapdevel xzdevel sudo yum install libffidevel y 下载并解压Python 3.8.5源码包 cd /opt wget https://www.python.org/ftp/python/3.8.5/Python3.8.5.tgz tar xvzf Python3.8.5.tgz 创建编译目录并安装Python 3.8.5 mkdir /usr/local/python3 cd Python3.8.5 ./configure prefix=/usr/local/python3 make && make install 创建软链接方便调用 ln s /usr/local/python3/bin/python3 /usr/local/bin/python3 ln s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
四、安装PostgreSQL数据库
Odoo使用PostgreSQL作为其数据库,我们需要安装并配置它:
安装EPEL repository sudo yum install epelrelease y 安装PostgreSQL 12 sudo yum y install https://download.postgresql.org/pub/repos/yum/reporpms/EL7x86_64/pgdgredhatrepolatest.noarch.rpm sudo yum y install postgresql12server postgresql12 初始化数据库 sudo /usr/pgsql12/bin/postgresql12setup initdb 启动并设置PostgreSQL服务开机自启 sudo systemctl start postgresql12 sudo systemctl enable postgresql12 设置PostgreSQL用户密码 sudo su postgres c "createuser s odoo"
为了允许远程访问PostgreSQL,还需要修改配置文件:
vi /var/lib/pgsql/12/data/postgresql.conf 找到listen_addresses = '*'行并将其改为 listen_addresses = '*' vi /var/lib/pgsql/12/data/pg_hba.conf 添加以下内容以允许所有IP访问 host all all 0.0.0.0/0 md5
修改后重启PostgreSQL服务:

sudo systemctl restart postgresql12
五、安装wkhtmltopdf
wkhtmltopdf用于生成PDF报告,Odoo推荐使用0.12.5版本:
cd /opt wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.5/wkhtmltox0.12.51.centos7.x86_64.rpm sudo yum localinstall wkhtmltox0.12.51.centos7.x86_64.rpm
六、安装Odoo 15
我们将从官方GitHub仓库中克隆Odoo 15源码并安装:
切换到odoo用户 sudo useradd m U r d /opt/odoo15 s /bin/bash odoo15 sudo passwd odoo15 su odoo15 安装Git和Node.js(Odoo依赖) sudo yum install git y curl sL https://rpm.nodesource.com/setup_14.x | sudo bash sudo yum install nodejs y 克隆Odoo 15源码 git clone https://www.github.com/odoo/odoo depth 1 branch 15.0 /opt/odoo15/odoo 创建并激活Python虚拟环境 cd /opt/odoo15 python3 m venv odoovenv source odoovenv/bin/activate 升级pip和setuptools,并安装所需依赖 pip install upgrade pip setuptools wheel pip install r odoo/requirements.txt 停用虚拟环境并退出当前用户 deactivate exit
七、配置Odoo
为了配置Odoo,我们需要创建一个systemd服务文件:
创建Odoo配置文件目录 sudo mkdir p /etc/odoo sudo nano /etc/odoo/odoo.conf
在文件中添加以下内容:
[options] ; This is the password that allows database operations: admin_passwd = your_secure_password db_host = False db_port = False db_user = odoo db_password = False addons_path = /opt/odoo15/odoo/addons, /opt/odoo15/odoocustomaddons
八、创建Systemd Unit文件
创建一个新的systemd unit文件来管理Odoo服务:
sudo nano /etc/systemd/system/odoo15.service
添加以下内容:

[Unit] Description=Odoo15 Requires=postgresql.service After=network.target postgresql.service [Service] Type=simple SyslogIdentifier=odoo15 PermissionsStartOnly=true User=odoo15 Group=odoo15 ExecStart=/opt/odoo15/odoovenv/bin/python3 /opt/odoo15/odoo/odoobin c /etc/odoo/odoo.conf StandardOutput=journal+console [Install] WantedBy=multiuser.target
保存并关闭文件,然后通知systemd新创建的服务文件:
sudo systemctl daemonreload
启动并设置Odoo服务开机自启:
sudo systemctl start odoo15 sudo systemctl enable odoo15
至此,我们已经成功在CentOS上安装了Odoo 15,包括必要的依赖项如Python 3、PostgreSQL、wkhtmltopdf等,我们还配置了Odoo服务,使其在系统启动时自动运行,通过这些步骤,你可以拥有一个稳定且高效的ERP系统来支持你的业务需求。
