应用:odoo

使用 Pigsty 托管的 PostgreSQL 部署 Odoo 开源 ERP 系统

odoo 配置模板提供了自建 Odoo 开源 ERP 系统的参考配置,使用 Pigsty 托管的 PostgreSQL 作为数据库。

更多细节,请参考 Odoo 部署教程


配置概览

  • 配置名称: odoo(位于 app/odoo.yml
  • 节点数量: 单节点
  • 配置说明:使用 Pigsty 托管的 PostgreSQL 部署 Odoo ERP
  • 适用系统:el8, el9, d12, u22, u24
  • 适用架构:x86_64
  • 相关配置:meta

启用方式:

./configure -c app/odoo [-i <primary_ip>]

配置内容

源文件地址:pigsty/conf/app/odoo.yml

all:
  children:

    # Odoo 应用 (默认用户密码: admin/admin)
    odoo:
      hosts: { 10.10.10.10: {} }
      vars:
        app: odoo
        apps:
          odoo:
            file:
              - { path: /data/odoo         ,state: directory, owner: 100, group: 101 }
              - { path: /data/odoo/webdata ,state: directory, owner: 100, group: 101 }
              - { path: /data/odoo/addons  ,state: directory, owner: 100, group: 101 }
            conf:
              PG_HOST: 10.10.10.10
              PG_PORT: 5432
              PG_USERNAME: odoo
              PG_PASSWORD: DBUser.Odoo
              ODOO_PORT: 8069
              ODOO_DATA: /data/odoo/webdata
              ODOO_ADDONS: /data/odoo/addons
              ODOO_DBNAME: odoo
              ODOO_VERSION: 19.0

    # Odoo 数据库
    pg-odoo:
      hosts: { 10.10.10.10: { pg_seq: 1, pg_role: primary } }
      vars:
        pg_cluster: pg-odoo
        pg_users:
          - { name: odoo    ,password: DBUser.Odoo ,pgbouncer: true ,roles: [ dbrole_admin ] ,createdb: true }
          - { name: odoo_ro ,password: DBUser.Odoo ,pgbouncer: true ,roles: [ dbrole_readonly ] }
          - { name: odoo_rw ,password: DBUser.Odoo ,pgbouncer: true ,roles: [ dbrole_readwrite ] }
        pg_databases:
          - { name: odoo ,owner: odoo ,revokeconn: true ,comment: odoo main database }
        pg_hba_rules:
          - { user: all ,db: all ,addr: 172.17.0.0/16 ,auth: pwd ,title: 'allow access from docker' }

    infra: { hosts: { 10.10.10.10: { infra_seq: 1 } } }
    etcd:  { hosts: { 10.10.10.10: { etcd_seq: 1 } }, vars: { etcd_cluster: etcd } }

  vars:
    version: v4.0.0
    admin_ip: 10.10.10.10
    region: default
    docker_enabled: true
    infra_portal:
      home : { domain: i.pigsty }
      odoo : { domain: odoo.pigsty ,endpoint: "10.10.10.10:8069" ,websocket: true ,certbot: odoo.pigsty }

    repo_enabled: false
    node_repo_modules: node,infra,pgsql
    pg_version: 18

    #----------------------------------------------#
    # PASSWORD
    #----------------------------------------------#
    grafana_admin_password: pigsty
    pg_admin_password: DBUser.DBA
    # ... 更多密码配置

配置解读

odoo 模板提供了 Odoo 开源 ERP 系统的一键部署方案。

Odoo 是什么

  • 全球最流行的开源 ERP 系统
  • 覆盖 CRM、销售、采购、库存、财务、HR 等企业管理模块
  • 支持数千个社区和官方应用扩展
  • 提供 Web 界面和移动端支持

关键特性

  • 使用 Pigsty 管理的 PostgreSQL 替代 Odoo 自带的数据库
  • 支持 Odoo 19.0 最新版本
  • 数据持久化到独立目录 /data/odoo
  • 支持自定义插件目录 /data/odoo/addons

部署步骤

curl -fsSL https://repo.pigsty.io/get | bash
./configure -c app/odoo
vi pigsty.yml                    # 修改密码和域名
./install.yml                    # 安装 Pigsty 和 PostgreSQL
./docker.yml                     # 安装 Docker
./app.yml                        # 启动 Odoo 容器

访问方式

# Odoo Web 界面
http://odoo.pigsty:8069

# 默认管理员账号
用户名: admin
密码: admin (首次登录时设置)

适用场景

  • 中小企业 ERP 系统部署
  • 需要完整的企业管理功能套件
  • 希望自建而非使用 SaaS 服务
  • 需要企业级 PostgreSQL 高可用和备份

注意事项

  • Odoo 容器以 uid=100, gid=101 运行,数据目录需要正确的权限
  • 首次访问时需要创建数据库和设置管理员密码
  • 生产环境建议启用 HTTPS
  • 可通过 /data/odoo/addons 安装自定义模块