InvenTree 库存管理系统使用指南:一条任务链跑通零件、入库与采购
【免费下载链接】InvenTreeOpen Source Inventory Management System项目地址: https://gitcode.com/GitHub_Trending/in/InvenTree
周五下午,你蹲在货架前清点一箱电解电容。箱子上贴着"约 200 只",但你不敢确定——上周领出去多少、补货到没到、哪个批次快过期,散落在 Excel 和记忆里。InvenTree 是一个开源的库存管理系统(Inventory Management System),把零件、库存、采购订单放进同一个 Web 系统里管理,让"大概齐"变成可查询、可追溯的数字。
用 Docker 先把服务跑起来
InvenTree 官方最推荐的部署方式就是 Docker Compose,一条命令拉起数据库、Web 服务器、后台 worker 和反向代理,不用自己装 Python 环境和 PostgreSQL。
克隆仓库,进入容器配置目录:
git clone https://gitcode.com/GitHub_Trending/in/InvenTree cd InvenTree/contrib/container编辑同目录下的.env文件,至少改两处:
INVENTREE_EXT_VOLUME:指向你本机一个真实目录,数据库、上传的附件、配置都持久化在这里INVENTREE_DB_USER/INVENTREE_DB_PASSWORD:换成自己的数据库账号密码
然后依次执行三步:
docker compose run --rm inventree-server invoke update docker compose run inventree-server invoke superuser docker compose up -d第一条完成建库、迁移和静态文件准备;第二条按提示创建管理员账号;第三条启动全部容器。启动后浏览器访问http://inventree.localhost(或你在.env里配置的地址),用刚建的账号登录。
想先拿一套示例数据熟悉界面?执行docker compose run --rm inventree-server invoke dev.setup-test -i即可灌入演示数据集。
跟着一条真实任务走:录零件、入库、下采购单
装好之后,按"建分类 → 录零件 → 生成条码 → 下采购单"的顺序走一遍,InvenTree 的核心概念就都见过了。
先建一棵零件分类树
左侧导航进入Parts,再进Categories。先建"电阻 → 贴片"这种两级分类,再录零件。分类没有层数限制,但建议第一棵树就 3 层以内,后面再拆。
分类建好后,在Parts页面点Add Parts → Create Part新建零件:填名称、编号(建议自己定一套编号规则,比如R-0402-10K),描述选个分类。表单里还能顺手标记这个零件是否可采购、是否按序列号跟踪,后面入库方式就靠这几个开关决定。
给零件记上库存
零件只是"图纸",真正在架子上的是库存项(Stock Item)。零件创建表单里可以勾选Create Initial Stock直接记一笔初始数量;之后每次出入库走Stock页面的调整操作。每个库存项会记录数量、所在库位、批次号或序列号,而且每一次变动都自动写一条跟踪记录,谁在什么时候动了多少,随时可查。
库位本身也是一棵树:仓库 → 货架 → 抽屉,逐层建。找东西的时候,"在仓库 A 的 3 号货架"比"在某个地方"省事得多。
给零件一张能被扫到的脸
InvenTree 自带条码插件,零件、库存项、库位都能生成二维码(短格式如INV-PA10),可以直接打印成标签贴在货架和物料上。之后用手机 App 或扫码枪一扫,就跳到对应零件页,领料、入库、查数量都不用手输编号。
下第一张采购单
发现电阻库存低于下限了,走Purchasing页面,点New Purchase Order:先选供应商(只有被标记为 Supplier 的公司才会出现在下拉列表里),加采购行、填数量和预期到货日期,提交。收货后在订单里确认收货,采购行就自动变成库存项,来源(哪家供应商、哪张订单)全程留痕。
到这里,你手里已经是一个能日常运转的库存系统:分类清楚了零件,库存有数量也有位置,采购有闭环。
什么时候会用到这些进阶能力
REST API。你想把库存数据同步到自己的报表系统,或者用脚本自动创建采购单时用到。InvenTree 提供完整的 REST API 和 OpenAPI 规范,浏览器登录后可以直接访问/api/交互式调试:
接口文档在 docs/docs/api/,零件、库存、订单都有对应端点。
插件系统。需要对接立创商城、DigiKey 等供应商自动拉取零件资料,或者打印标签、生成报表、接企业通知渠道时,去Admin Center → Plugins里装现成插件即可。插件机制源码在 src/backend/InvenTree/plugin/,写法参考 docs/docs/plugins/。
权限与角色。团队超过两三个人时建议用:在Admin Center → Roles里给"仓库管理员"只开库存和采购的写权限,给访客只读角色,避免误操作。详见 docs/docs/settings/permissions.md。
移动端 App。在车间和货架之间走动时,手机 App 连上你的服务器,扫码查件、调库都方便,适合"手边没有电脑"的场景。说明文档在 docs/docs/app/。
掉进坑里之前先看这几个
重启容器后上传的文件不见了。原因:外部数据卷没有正确映射,数据写进了容器内部。 解法:确认.env里INVENTREE_EXT_VOLUME指向本机真实目录,且docker compose.yml里该变量被正确引用;反复改过配置的,删掉旧数据卷重新初始化更干净。
本机能访问,局域网别的设备打不开。原因:站点地址配置成了localhost域名。 解法:把INVENTREE_SITE_URL改成本机在局域网中的 IP(如http://192.168.1.10),非标准端口访问时记得同时写端口号。
采购单里选不到供应商。原因:这个公司在系统里没开 Supplier 属性。 解法:进Companies页面,把目标公司编辑为供应商类型。
点 Add Parts 没有反应、或干脆看不到按钮。原因:当前账号没有 Part 权限组里的 create 权限。 解法:找管理员在Roles里补上对应权限。
登录报密钥错误。原因:多个容器实例用了不同的 secret key。 解法:同一套部署共用数据卷里的secret_key.txt即可,别给每个容器各生成一个。
更多问题可先查官方 FAQ:docs/docs/faq.md,Docker 部署细节见 docs/docs/start/docker_install.md。
下一步可以做什么
- 定一套零件编号规则,把现有 Excel 库存导一批进系统(导入向导在Parts → Add Parts → Import from File)
- 建出第一层库位树,给高频物料贴上条码标签
- 配一个低库存预警通知,让系统主动提醒你补货
- 给团队成员按角色分权限
- 把
INVENTREE_EXT_VOLUME所在目录纳入定时备份
继续深入的话,完整文档在 docs/docs/,后端核心源码在 src/backend/InvenTree/(零件模块 part/、库存模块 stock/、采购模块 order/),前端在 src/frontend/。
【免费下载链接】InvenTreeOpen Source Inventory Management System项目地址: https://gitcode.com/GitHub_Trending/in/InvenTree
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考