在 Rocky Linux 10 上安装 Odoo ERP CRM
Source: Dev.to
在 Rocky Linux 10 上安装 Odoo ERP/CRM
Odoo 是一套功能强大的开源 ERP(企业资源计划)和 CRM(客户关系管理)系统,能够帮助企业管理业务流程、销售、库存、会计等多个模块。本文将一步步演示如何在 Rocky Linux 10(也称为 Rocky 10)上部署 Odoo 16(截至撰写本文时的最新稳定版)。
注意:本文假设你拥有一台已经安装好 Rocky Linux 10 的服务器,并且拥有 root 或 sudo 权限。
目录
系统准备
# 更新系统软件包
sudo dnf update -y
# 安装常用工具
sudo dnf install -y wget curl vim git
提示:Rocky Linux 10 默认使用 dnf 包管理器,所有后续软件都通过它进行安装。
安装并配置 PostgreSQL
Odoo 使用 PostgreSQL 作为后端数据库。我们将安装官方的 PostgreSQL 15(与 Odoo 兼容的最新版本)。
# 添加 PostgreSQL 官方仓库
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-10-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# 禁用默认的 PostgreSQL 模块,以防冲突
sudo dnf -qy module disable postgresql
# 安装 PostgreSQL 15 服务器和客户端
sudo dnf install -y postgresql15-server postgresql15
# 初始化数据库集群
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
# 启动并设置开机自启
sudo systemctl enable --now postgresql-15
创建 Odoo 数据库用户
# 切换到 postgres 系统用户
sudo -i -u postgres
# 创建名为 odoo 的数据库角色(无密码,使用 peer 认证)
createuser -s odoo
# 退出 postgres 用户
exit
说明:Odoo 默认使用 peer 认证方式,即系统用户
odoo与数据库用户同名即可登录,无需额外密码。
创建 Odoo 系统用户
# 创建系统用户 odoo(无登录 shell,专用于运行 Odoo)
sudo useradd -m -d /opt/odoo -s /sbin/nologin odoo
安装 Odoo 本体
我们将直接从官方的 GitHub 仓库克隆 Odoo 源码并安装所需的 Python 依赖。
# 安装 Python 3.11(Rocky 10 默认提供)
sudo dnf install -y python3 python3-pip python3-venv
# 切换到 odoo 用户的工作目录
sudo -u odoo -i
cd /opt/odoo
# 克隆 Odoo 16 源码(可根据需要更换分支)
git clone https://www.github.com/odoo/odoo --depth 1 --branch 16.0 .
# 创建并激活虚拟环境
python3 -m venv venv
source venv/bin/activate
# 安装 Python 依赖
pip install -r requirements.txt
# 退出 odoo 用户会话
deactivate
exit
提示:如果你想安装特定的社区模块或自定义插件,只需将它们放置在
/opt/odoo/custom/addons目录下,并在后面的配置文件中添加路径。
配置 Odoo 服务
创建系统服务文件,使 Odoo 能够作为后台守护进程运行。
sudo tee /etc/systemd/system/odoo.service > /dev/null <<EOF
[Unit]
Description=Odoo ERP
Documentation=https://www.odoo.com
After=network.target postgresql-15.service
Wants=postgresql-15.service
[Service]
Type=simple
User=odoo
Group=odoo
ExecStart=/opt/odoo/venv/bin/python3 /opt/odoo/odoo-bin -c /etc/odoo.conf
WorkingDirectory=/opt/odoo
StandardOutput=journal
StandardError=journal
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
EOF
创建 Odoo 主配置文件
sudo tee /etc/odoo.conf > /dev/null <<EOF
[options]
; 此处为 Odoo 运行时的主要配置
; 数据库相关
db_host = False
db_port = False
db_user = odoo
db_password = False
db_name = False
db_filter = .*
; 服务器监听端口(默认 8069)
xmlrpc_port = 8069
; 日志文件位置
logfile = /var/log/odoo/odoo.log
; 加载的插件路径(可自行添加自定义路径)
addons_path = /opt/odoo/addons
; 以管理员身份启动时的默认密码(生产环境请改为强密码)
admin_passwd = admin
; 是否启用长轮询(实时聊天、通知等功能)
longpolling_port = 8072
EOF
设置日志目录权限
sudo mkdir -p /var/log/odoo
sudo chown odoo:odoo /var/log/odoo
启动并检查服务
# 重新加载 systemd 配置
sudo systemctl daemon-reload
# 启动 Odoo
sudo systemctl start odoo
# 设置开机自启
sudo systemctl enable odoo
# 查看服务状态
sudo systemctl status odoo
如果一切正常,你会看到 Active: active (running)。
启动并验证
打开浏览器,访问:
http://<服务器IP>:8069
首次访问时,Odoo 会提示创建数据库。使用以下信息:
- 数据库名称:任意(如
mycompany) - 管理员密码:在
/etc/odoo.conf中设置的admin_passwd(默认admin) - 语言:根据需要选择
- 公司名称:你的公司或组织名称
完成后,你将进入 Odoo 的欢迎界面,可以开始安装所需的模块(如 CRM、销售、库存、会计等)。
常见问题排查
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| 无法访问 8069 端口 | 防火墙阻止 | sudo firewall-cmd --add-port=8069/tcp --permanent && sudo firewall-cmd --reload |
| 启动 Odoo 报错 “psycopg2‑binary not installed” | Python 依赖缺失 | 重新激活虚拟环境并执行 pip install -r requirements.txt |
| 数据库连接失败 | PostgreSQL 未运行或用户权限错误 | sudo systemctl status postgresql-15 检查服务;确认 odoo 系统用户在 PostgreSQL 中拥有 SUPERUSER 权限 |
| 日志文件为空或不写入 | 权限不足 | 确认 /var/log/odoo 目录属于 odoo:odoo,并检查 odoo.conf 中的 logfile 路径 |
| 模块加载失败 | addons_path 配置错误 | 确认 addons_path 指向实际的插件目录,路径之间使用逗号分隔 |
小结
本文展示了在 Rocky Linux 10 上从零部署 Odoo 16 的完整流程,包括系统准备、数据库安装、Odoo 本体获取、服务配置以及常见问题的排查。完成后,你将拥有一个功能完整、可扩展的 ERP/CRM 平台,能够满足中小企业的业务管理需求。
后续建议
- 为生产环境配置 HTTPS(使用 Let’s Encrypt 或自签名证书)
- 将
admin_passwd更改为强密码,并在防火墙中仅开放必要端口- 定期备份数据库(
pg_dumpall)和 Odoo 配置文件
祝你部署顺利,业务蒸蒸日上!
DEV Community


DEV Community – 一个用于讨论、跟进软件开发并管理你的软件职业的空间。
Future


Future – 新闻与讨论科学技术,包括 AI、VR、加密货币、量子计算等。
Open Forem


Open Forem – Forem 社区的通用讨论空间。如果它在其他地方没有归属,就属于这里。
Music Forem


Music Forem – 从作曲、演出到设备、热门音乐拍摄,以及介于其中的一切。
Vibe Coding Forem


Vibe Coding Forem – 讨论 AI 软件开发,并展示我们的构建成果。
Security Forem


Security Forem – 您的安全中心枢纽。涵盖从道德黑客和CTF到GRC以及职业发展,适合初学者和专业人士。
高尔夫 Forem


其他社区(仅徽标)
高尔夫 Forem
Golf Forem
一个由高尔夫球手和高尔夫爱好者组成的社区
Crypto Forem


Crypto Forem
一个面向所有加密领域的协作社区——从比特币到协议开发,从DeFi到NFT以及市场分析。
育儿


Parenting
一个让父母分享养育孩子过程中的喜悦、挑战与智慧的地方。我们彼此支持,也为他们提供帮助。
Forem Core


Forem Core
讨论核心 Forem 开源软件项目——功能、漏洞、性能、自托管。
Source:
Maker Forem


Maker Forem
一个面向创客、爱好者和专业人士的社区,讨论 Arduino、Raspberry Pi、3D 打印以及更多主题。
HMPL.js Forem


HMPL.js Forem
为使用 HMPL.js 构建快速、轻量级 Web 应用的开发者提供。一个分享项目、提问并讨论服务器驱动模板的空间。



