15分钟快速了解 Odoo

Odoo是一家提供开源企业资源管理(ERP)及客户关系管理(CRM)系统的软件服务企业,其核心产品采用模块化架构设计,支持销售管理、库存监控、财务会计等20余个业务场景应用 。系统分为开源社区版和企业付费版,通过超过4万个扩展模块覆盖制造、零售、供应链等40余个行业解决方案 。作为2023-2024年连续入选胡润全球独角兽榜的企业,其估值从235亿人民币(2023年)调整为135亿人民币(2024年)。

Odoo 是一个开源的企业资源规划(ERP)软件平台,提供包括销售、采购、库存、会计、项目管理、人力资源、制造等在内的多种业务管理模块。它采用模块化设计,企业可以根据自身需求选择和组合相应的功能模块。Odoo 既适用于中小企业,也支持大企业的定制化需求,同时提供社区版(免费开源)和企业版(商业付费,含技术支持和高级功能)。其特点是界面友好、集成性强、易于扩展和定制。

2025年6月26日,《2025全球独角兽榜》发布,Odoo以400亿企业估值位列榜单147位。

主要功能包括:

  1. 理解Odoo是什么:Odoo是一个开源的企业资源规划(ERP)系统,提供一系列商业应用。

  2. 梳理Odoo的核心模块与主要功能:包括销售、采购、库存、会计、人力资源、项目管理、制造、客户关系管理(CRM)等。

  3. 概括其主要功能,按业务领域分类描述,确保信息准确且简洁。

主要功能包括:

  1. 销售管理:处理报价单、销售订单、发票与客户管理。

  2. 采购管理:管理供应商、采购订单、收货与付款。

  3. 库存管理:实时跟踪库存、管理仓库、优化物流与供应链。

  4. 会计与财务:自动化记账、财务报表、税务管理、多币种支持。

  5. 客户关系管理(CRM):跟踪潜在客户、商机管理与销售漏斗分析。

  6. 项目管理:项目任务分配、进度跟踪、时间与费用管理。

  7. 制造(MRP):生产计划、物料需求计划(MRP)、工单管理。

  8. 人力资源(HR):员工管理、考勤、薪资、招聘与绩效评估。

  9. 网站与电子商务:搭建企业网站、在线商店与数字营销工具。

  10. 移动与多平台支持:支持多终端访问,包括手机App。

  11. 模块化与可扩展性:可根据需求安装或开发定制模块。

  12. 集成能力:各模块数据互通,支持第三方系统集成。

Odoo 社区版和企业版有什么区别?

计划:

  1. 明确用户问题:用户想知道 Odoo 社区版与企业版之间的具体区别。

  2. 分析主要差异点:从功能、技术支持、更新维护、许可证、使用场景等方面进行对比。

  3. 以清晰、简洁的中文总结两者的核心不同,便于用户快速理解。

Odoo 社区版和企业版的主要区别如下:

  1. 许可证与费用
  • 社区版:完全开源免费,使用 AGPL 许可证,可自由下载、使用和修改源码。
  • 企业版:基于社区版开发,为商业版本,需购买许可证,按用户数收费,提供官方技术支持。
  1. 功能范围
  • 社区版:包含核心 ERP 功能模块(如销售、采购、库存、会计等),但部分高级功能缺失。
  • 企业版:在社区版基础上增加了许多高级功能,例如高级报表、PLM(产品生命周期管理)、维修管理、零售管理、网站构建器增强、自动化工作流等。
  1. 技术支持与维护
  • 社区版:无官方技术支持,依赖社区论坛和开发者帮助。
  • 企业版:提供官方技术支持、定期更新、安全补丁、远程协助等服务。
  1. 更新与升级
  • 社区版:更新频繁,但主要由社区推动,稳定性可能不如企业版。
  • 企业版:官方提供长期支持与稳定版本,更新更有保障,适合企业生产环境。
  1. 适用对象
  • 社区版:适合个人学习、开发测试、小型团队或预算有限的场景。
  • 企业版:适合对稳定性、安全性、功能完整性及官方支持有较高要求的中大型企业。

总结:社区版是免费开源的基础版本,功能有限且无官方支持;企业版是商业版本,功能更强大、服务更完善,但需要付费。

技术路径

系统基于Python开发框架构建,采用PostgreSQL数据库实现数据存储,支持通过WSL环境下的Ubuntu系统进行部署。其技术特性包括:

提供Web端多平台访问能力;

支持用户权限分级管理与响应式界面设计;

可通过源码编译实现定制化环境配置。

功能模块

包含以下标准化业务管理系统:

销售管理:订单处理、报价生成与客户跟进功能;

库存管理:实时库存监控、自动化补货预警及供应链优化;

财务管理:预算控制、多币种核算与税务申报模块;

生产管理:制造资源计划(MRP)与制造执行系统(MES)整合。

企业服务

企业服务涵盖三大维度:

    1. 系统实施:提供业务流程诊断、数据迁移测试及员工培训等标准化服务流程;
    1. 定制开发:支持社区版功能扩展、个性化表单定制与旧版本升级适配;
    1. 集成服务:实现与OA办公系统、BI分析工具及第三方电商平台的数据互通。 [2]

行业应用

系统已在以下领域形成成熟解决方案:

制造业:整合PLM产品生命周期管理与MRP生产调度功能;

零售业:提供POS终端系统与多门店库存联动方案; [1-2]

跨境电商:实现多平台订单聚合与自动化物流追踪。 [2]

运营模式

采用"开源+商业"双轨模式:

社区版遵循LGPLv3协议免费开放源码,吸引超过10万开发者参与模块开发; [1-2]

企业版提供专业技术支持服务,按每位用户13.5美元/月的定价模式收费; [1]

通过官方应用市场构建模块交易生态,累计上架4万余个行业扩展应用。 [1]

国内Docker 如何安装Odoo?

以下是在国内使用 Docker 安装 Odoo 的详细步骤(推荐使用国内镜像加速):

一、准备工作

  1. 安装 Docker Desktop(中国版推荐)
  • 前往 Docker 中国官网 或使用国内镜像(如腾讯云Docker镜像加速)下载 Docker Desktop for Windows/macOS。
  • 安装完成后,启动 Docker Desktop。
  • 开启 Docker 服务,并确保状态为"运行中"。
  1. 配置 Docker 镜像加速(重要,国内必备)
  • Windows/macOS:
  • 打开 Docker Desktop → 设置 → Docker Engine
  • registry-mirrors 中添加国内镜像地址,例如:
复制代码
cs 复制代码
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://registry.docker-cn.com"
  ]
}
  • 点击"Apply & Restart"使配置生效。

二、通过 Docker 快速部署 Odoo

方法一:使用官方 Odoo 镜像(推荐)

  1. 拉取 Odoo 官方镜像(建议指定版本,如 16.0)
bash 复制代码
docker pull odoo:16.0

2. 拉取 PostgreSQL 镜像(Odoo 依赖的数据库)

bash 复制代码
docker pull postgres:13
  1. 启动 PostgreSQL 数据库容器
bash 复制代码
docker run -d \
  --name odoo-db \
  -e POSTGRES_USER=odoo \
  -e POSTGRES_PASSWORD=odoo123 \
  -e POSTGRES_DB=postgres \
  -v odoo-db-data:/var/lib/postgresql/data \
  -p 5432:5432 \
  postgres:13
bash 复制代码
docker run -d  --name odoo-db  -e POSTGRES_USER=odoo  -e POSTGRES_PASSWORD=odoo123   -e POSTGRES_DB=postgres   -v odoo-db-data:/var/lib/postgresql/data   -p 5432:5432   postgres:13

> 说明:

> - POSTGRES_USER:数据库用户名(odoo)

> - POSTGRES_PASSWORD:数据库密码(可自定义,如 odoo123)

> - POSTGRES_DB:初始数据库名(默认 postgres 即可)

> - -v:数据卷持久化,防止数据丢失

> - -p:将容器的 5432 映射到主机的 5432 端口

  1. 启动 Odoo 容器并连接数据库
bash 复制代码
docker run -d \
  --name odoo \
  --link odoo-db:db \
  -p 8069:8069 \
  -e HOST=db \
  -e USER=odoo \
  -e PASSWORD=odoo123 \
  odoo:16.0
bash 复制代码
docker run -d   --name odoo   --link odoo-db:db   -p 8069:8069  -e HOST=db   -e USER=odoo   -e PASSWORD=odoo123  odoo:16.0

> 说明:

> - --link:连接之前启动的数据库容器(名称为 odoo-db)

> - -p 8069:8069:将 Odoo 默认端口映射到主机

> - -e 参数传递数据库连接信息(与上方 POSTGRES_* 保持一致)

  1. 访问 Odoo
  • 打开浏览器,访问:http://localhost:8069
  • 按提示设置超级管理员密码,完成初始化。

方法二:使用 docker-compose(更推荐,便于管理)

  1. 创建 docker-compose.yml 文件

在任意目录(如 ~/odoo)下创建 docker-compose.yml 文件,内容如下:

bash 复制代码
version: '3.8'

services:
  db:
    image: postgres:13
    environment:
      - POSTGRES_USER=odoo
      - POSTGRES_PASSWORD=odoo123
      - POSTGRES_DB=postgres
    volumes:
      - odoo-db-data:/var/lib/postgresql/data
    ports:
      - "5432:5432"

  odoo:
    image: odoo:16.0
    depends_on:
      - db
    ports:
      - "8069:8069"
    environment:
      - HOST=db
      - USER=odoo
      - PASSWORD=odoo123
  1. 启动服务

docker-compose.yml 所在目录执行:

bash 复制代码
docker-compose up -d
  1. 访问 Odoo

浏览器打开:http://localhost:8069,按提示设置管理员密码即可。


三、其他说明

  • 数据持久化:上述命令已使用 volume 保存数据库数据,重启容器数据不会丢失。
  • 自定义模块 :如需加载自定义模块,可挂载本地模块目录到容器中的 /mnt/extra-addons,例如在 docker-compose.ymlodoo 服务中添加:
复制代码
bash 复制代码
volumes:
  - ./extra-addons:/mnt/extra-addons

并确保 Odoo 配置中包含该路径:addons_path = /usr/lib/python3/dist-packages/odoo/addons,/mnt/extra-addons

  • 更换 Odoo 版本 :只需将镜像 tag 改为其他版本,如 odoo:15.0odoo:14.0 等。

按照上述步骤,你就可以在国内环境下,通过 Docker Desktop 快速、稳定地部署 Odoo 应用了。

如何在 Docker 中为 Odoo 添加自定义模块?

在 Docker 中为 Odoo 添加自定义模块,通常有两种方式:挂载本地模块目录将模块放入容器内 。推荐使用 挂载本地目录(更灵活、便于开发),下面详细介绍操作方法。


一、推荐方法:挂载本地自定义模块目录(使用 volumes 映射)

1. 准备你的自定义模块

  • 假设你有一个 Odoo 自定义模块,目录结构如下(示例):
复制代码
bash 复制代码
my-custom-modules/
└── my_module/
    ├── __init__.py
    ├── __manifest__.py
    └── views/
        └── ...

> 注意:模块目录名(如 my_module)就是你在 Odoo 中安装的模块名,必须包含 __init__.py__manifest__.py

2. 修改 docker-compose.yml ,挂载模块目录

在你的 docker-compose.yml 文件中(参考上一回答中的模板),在 odoo 服务下添加一个 volume,将本地模块目录挂载到容器内的 Odoo 默认额外模块加载路径:/mnt/extra-addons/

示例(关键部分):

复制代码
bash 复制代码
version: '3.8'

services:
  db:
    image: postgres:13
    environment:
      - POSTGRES_USER=odoo
      - POSTGRES_PASSWORD=odoo123
      - POSTGRES_DB=postgres
    volumes:
      - odoo-db-data:/var/lib/postgresql/data
    ports:
      - "5432:5432"

  odoo:
    image: odoo:16.0
    depends_on:
      - db
    ports:
      - "8069:8069"
    environment:
      - HOST=db
      - USER=odoo
      - PASSWORD=odoo123
    volumes:
      - ./my-custom-modules:/mnt/extra-addons  # 关键:挂载本地模块目录

> 📌 说明:

> - ./my-custom-modules 是你本地存放自定义模块的文件夹路径,请根据实际路径修改。

> - /mnt/extra-addons 是 Odoo 容器内默认会扫描额外模块的目录。

> - 这样 Odoo 启动时会自动加载该目录下的所有模块。

3. 重启 Odoo 容器

docker-compose.yml 所在目录执行:

复制代码
bash 复制代码
docker-compose down
docker-compose up -d

4. 在 Odoo 中安装自定义模块

  1. 打开浏览器访问:http://localhost:8069

  2. 以管理员身份登录 Odoo。

  3. 进入:应用 → 更新应用列表(若未显示你的模块,先点此更新)。

  4. 搜索你的模块名称(如 my_module),然后点击 安装


二、方法二:直接将模块放入容器内(不推荐,适合临时测试)

如果你不想挂载目录,也可以进入容器手动复制模块文件:

1. 启动 Odoo(如果还没启动)

bash 复制代码
docker-compose up -d

2. 进入 Odoo 容器

bash 复制代码
docker exec -it odoo bash

3. 将模块文件复制进容器(从宿主机)

假设你的模块目录在宿主机的 /path/to/my_module,可以这样复制:

复制代码
bash 复制代码
# 从宿主机复制到容器内的 /mnt/extra-addons/
docker cp /path/to/my_module odoo:/mnt/extra-addons/

> 或者你也可以将模块放到容器默认的 /odoo/custom-addons(如果配置了对应路径)

4. 确保 Odoo 配置加载该路径

如果你的 Odoo 没有默认加载 /mnt/extra-addons,你可能需要在 odoo.conf 或环境变量/启动参数中添加:

复制代码
bash 复制代码
addons_path = /usr/lib/python3/dist-packages/odoo/addons,/mnt/extra-addons

> 如果你使用 docker-compose,推荐直接挂载而不是手动复制。


三、总结(推荐做法)

方式 是否推荐 特点
挂载本地模块目录到 /mnt/extra-addons ✅ 强烈推荐 开发方便,实时更新,无需进容器
手动复制模块到容器内 ⚠️ 临时方案 不利于维护,每次修改都需重新复制
构建自定义 Odoo 镜像包含模块 ⚠️ 适用于生产固定模块 灵活性低,适合模块固定不变的场景

如你正在 开发模块 ,强烈建议使用 方法一(挂载本地目录),可以实时修改代码,无需频繁重建容器,提高效率。

安装并初始化 Odoo 后,你可以按照以下步骤开始使用它:


一、登录 Odoo

  1. 打开浏览器,访问:http://localhost:8069(如果是远程服务器,请替换为对应的 IP 地址或域名)。

  2. 首次访问时,系统会引导你:

  • 输入之前初始化时设置的 超级管理员密码(不是数据库密码)。
  • 选择语言(如中文)、公司信息等。
  1. 登录后,你将进入 Odoo 应用首页(应用列表)

二、安装所需应用模块

Odoo 是一个模块化系统,默认只安装了基础功能,你需要根据业务需求安装相应的应用,比如:

  • 销售管理(Sales)
  • 采购管理(Purchase)
  • 库存管理(Inventory)
  • 项目管理(Project)
  • 会计与财务(Accounting)
  • 网站(Website)
  • CRM(客户关系管理)
  • 人力资源(HR / 员工管理)
  • 制造(Manufacturing)
  • 门店 / POS(Point of Sale)

如何安装应用:

  1. 点击顶部菜单栏的 「应用」(或「应用列表」)。

  2. 在搜索框输入你需要的模块名称,比如 "销售"、"会计"。

  3. 找到对应模块后,点击 「安装」 按钮即可。

> 📌 提示:如果找不到某些模块,可以点击右上角 「更新应用列表」 刷新。

如CRM

基本上都收费 无感

营销


发现一个bug

三、开始使用 Odoo 应用

安装完应用后,你可以通过以下方式使用:

1. 通过应用入口进入功能模块

  • 比如安装了"销售",点击左下角应用菜单中的 「销售」,就能看到销售订单、报价单、客户等功能。
  • 每个模块都有清晰的操作界面,大部分操作是 点击、填写表单、保存 即可。

2. 管理数据

  • 你可以在各个模块中创建和管理数据,比如:
  • 客户(Contacts / Customers)
  • 产品(Products)
  • 订单(Sales / Purchase Orders)
  • 发票(Invoices)
  • 库存移动(Stock Moves)
  • 数据之间通常会 自动关联,比如销售订单会关联客户和产品。

3. 查看仪表盘与报表

  • 大多数模块都有 仪表盘(Dashboard),显示关键数据,如销售额、待处理订单等。
  • 你也可以通过 「报表」 功能生成 PDF、Excel 等格式的业务报表。

四、常见后续操作

操作 说明
添加用户 进入「设置」→「用户与公司」→「用户」,添加员工或合作伙伴账号
设置权限 通过「设置」→「技术」→「访问权限」管理不同角色的数据访问权限
多语言支持 可以为用户、界面、文档设置多种语言,包括中文
备份数据 定期备份数据库(尤其是生产环境),可通过 PostgreSQL 工具或 Odoo 自带备份功能
自定义模块 / 页面 如你有开发需求,可以安装自定义模块或委托开发新功能

五、实用提示

  • 左下角「≡」图标 是 Odoo 的应用菜单,点击可展开所有已安装的应用。
  • 设置(⚙️图标):用于系统配置、用户管理、模块管理、参数设置等。
  • 搜索功能:页面顶部通常有全局搜索,可以快速定位功能、数据、记录。
  • Odoo 支持多公司、多币种、多语言,适合中小企业到中大型企业使用。

总结 安装并初始化 Odoo 后,你主要可以:

  1. 登录系统

  2. 安装业务应用模块(如销售、财务、库存等)

  3. 添加客户、产品、订单等业务数据

  4. 使用仪表盘查看运营情况

  5. 管理用户与权限

  6. 根据需要扩展或定制功能

🎯 Odoo 是一个高度灵活的 ERP 系统,初期可以从核心模块入手,逐步根据业务需求扩展。

开发 API 接口

https://www.odoo.com/documentation/16.0/developer/reference/external_api.html

其他参考资料

C# net CMS相关开源软件 技术选型 可行性分析

https://blog.csdn.net/cao919/article/details/147119212

C# .net ai Agent AI视觉应用 写代码 改作业 识别屏幕 简历处理 标注等

https://blog.csdn.net/cao919/article/details/146504537

C# net deepseek RAG AI开发 全流程 介绍

https://blog.csdn.net/cao919/article/details/146234277

为您的照片提供本地 AI 视觉:使用 Llama Vision 和 ChromaDB 构建 AI 图像标记器

https://blog.csdn.net/cao919/article/details/147294010

基于.NET后端实现图片搜索图片库 核心是计算上传图片与库中图片的特征向量相似度并排序展示结果

https://blog.csdn.net/cao919/article/details/147266662

2025年AI开发利器大对决:Dify vs n8n全方位测评,哪个才是你的效率神器?

https://blog.csdn.net/cao919/article/details/147780276

15分钟快速了解 Odoo

https://cloud.tencent.com/developer/article/2515902

相关推荐
m0_706653233 小时前
Python入门:从零到一的第一个程序
jvm·数据库·python
reasonsummer3 小时前
【办公类-53-09】20260131Python模仿制作2025学年第二学期校历(excel+pdf)
python·pdf
zhengfei6113 小时前
踪有趣的 Linux(和 UNIX)恶意软件。提交 PR
java·数据库·mysql
2301_765703143 小时前
Python数据库操作:SQLAlchemy ORM指南
jvm·数据库·python
Stuomasi_xiaoxin3 小时前
Windows 安装 OpenCode 完全指南:从 npm 踩坑到 Chocolatey 完美部署
python·ai编程·opencode
春日见3 小时前
Autoware使用教程
大数据·人工智能·深度学习·elasticsearch·搜索引擎·docker·容器
2301_790300963 小时前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
我的xiaodoujiao3 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 45--生成项目需要的requirements.txt依赖文件
python·学习·测试工具·pytest
helloworldandy3 小时前
趣味项目与综合实战
jvm·数据库·python