ERPNext 免费 ERP 本地部署:从零跑通财务到制造
【免费下载链接】erpnextFree and Open Source Enterprise Resource Planning (ERP)项目地址: https://gitcode.com/GitHub_Trending/er/erpnext
商业 ERP 授权贵,财务、库存常常各买一套。ERPNext 是 100% 开源免费的 ERP 系统,财务、采购、库存、制造在一个系统里跑完。本文带你完成 Docker 启动演示环境、Bench 部署开发环境,直到找到第一处二次开发切入点。
📋 项目速览
- 定位:100% 开源 ERP,财务、采购、销售、库存、制造在同一系统内闭环
- 技术栈:Python 3.14+ 加 JavaScript,基于 Frappe 框架,单据用元数据驱动的 DocType 定义
- 许可证:GNU GPL v3,可自由使用、修改、再分发
- 适用人群:想自管业务数据的小微企业、计划二次开发的技术团队
- 核心模块:
erpnext/modules.txt列了 21 个,含 Accounts、Stock、Buying、Selling、Manufacturing、CRM、Projects、Assets - 部署方式:Docker 快速体验、Bench 本地开发两条路线
🚀 跑起来
Docker 启动:ERPNext 快速体验
README 的 Docker 路线指向 Frappe 官方的 frappe_docker 仓库,克隆后一条命令启动,2~3 分钟自动建好站点。
# 先按 README 指引克隆 frappe_docker 仓库并进入目录 docker compose -f pwd.yml up -d浏览器打开http://localhost:8080,账号Administrator,密码admin。
⚠️ 一次性演示环境:装不了自定义应用,容器销毁数据即丢,仅适合评估功能。
用 Bench 部署 ERPNext 开发环境
按 README 指引装好 bench CLI(官方安装脚本会装齐 MariaDB 等依赖),然后:
bench get-app https://gitcode.com/GitHub_Trending/er/erpnext bench new-site erpnext.localhost bench --site erpnext.localhost install-app erpnext bench start打开http://erpnext.localhost:8000/app即可看到应用。安装脚本会为 Administrator、MariaDB root、Frappe 用户各生成一组密码,打印在终端并写入~/frappe_passwords.txt。
⚠️ 开发环境面向定制和二次开发,生产部署请按官方文档配好反向代理与备份。
💼 能力拆解
财务与开票:从记账到报表
财务模块(Accounts)是 ERPNext 的核心,管住从记账、开票到报表的完整链路,源码在 erpnext/accounts/。
- Sales Invoice / Purchase Invoice:销售与采购发票,覆盖开票、红冲与税费计算
- Journal Entry / Payment Entry:记账与收付款,从开单到对账一条线走完
- Profit and Loss Statement:内置利润表、资产负债表等标准报表,按财年、账簿、成本中心筛选
- Bank Statement Import:解析银行流水文件,配合 Bank Reconciliation Tool 核对往来
采购到销售:订单与库存闭环
从供应商询价到客户开票,全部单据在一条库存流水里流转。
- Stock Entry / Warehouse:出入库全流程,支持批次与序列号跟踪,源码在 erpnext/stock/
- Request for Quotation / Purchase Order:询价到采购下单,erpnext/buying/ 下还有供应商评分
- Sales Order / POS:销售订单与零售收银,源码在 erpnext/selling/
生产制造:BOM 到车间工单
制造模块把物料清单、生产计划和车间执行串成一条链路。
- BOM:物料清单,支持多级结构
- Production Plan / Work Order:生产计划直接生成工单
- Job Card / Workstation:车间工单与工位执行记录
- Scheduling:erpnext/manufacturing/scheduling/ 提供独立排程引擎
⚠️ 踩坑与约束
- 一次性环境:Docker 演示环境装不了自定义应用,容器销毁数据即丢。正式使用按官方文档完整部署。
- 端口冲突:开发环境占
8000端口,Docker 演示占8080,被占用时改对应配置。 - 运行时版本:
pyproject.toml要求 Python 3.14+ 且依赖 Frappe 17+,版本不对装不起来,部署前先确认。 - 凭据保管:Bench 安装脚本生成的三组密码只存在
~/frappe_passwords.txt,丢了只能重置。 - 只读上游:二次开发在本地 clone 后改,别把补丁往上游仓库里打。
📚 延伸资源
- README.md:官方文档、课程与社区入口都列在这里(上手前先读)
- erpnext/hooks.py:应用钩子入口(定制前先看这里)
- banking/:独立 React 银行对账前端(直观看 ERPNext 怎么搭新页面)
- erpnext/accounts/report/:上百个标准报表实现(定制报表的好参考)
- erpnext/modules.txt:21 个模块完整清单(评估能力边界用)
✅ 你的下一步
- 跑通最小闭环:用 Docker 起演示环境,从建科目表到开一张 Sales Invoice 走一遍
- 录入真实数据:用 Bench 环境建仓库和科目,把一笔真实采购与开票录进去核对金额
- 动手改一处代码:本地 clone 后读
erpnext/hooks.py,加一行自定义逻辑验证二次开发流程
【免费下载链接】erpnextFree and Open Source Enterprise Resource Planning (ERP)项目地址: https://gitcode.com/GitHub_Trending/er/erpnext
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考