问题现象
本地venv虚拟环境开发可正常运行,服务器/容器部署启动时报ModuleNotFoundError,缺失依赖包,排查发现本地与部署端Python解释器、依赖清单不匹配。
复现步骤
- 本地虚拟环境安装依赖,仅手动
pip install未更新requirements.txt
- 部署启动脚本未激活虚拟环境,直接调用系统Python
- 生产环境未同步完整锁定依赖版本,出现隐式子包、导入名与安装名不匹配问题
期望优化
- 项目补充标准化一键部署脚本,强制绑定虚拟环境并自动同步依赖
- 文档增加环境一致性快速排查命令集,缩短问题定位耗时
- 规范依赖导出方式,推荐使用锁定版本清单避免版本漂移
本地虚拟环境开发正常,部署启动报模块缺失,根源为环境未激活、依赖清单未锁定。
建议项目补充标准化启动脚本与环境校验命令,方便快速定位Python解释器、依赖差异问题。
附简易排查命令:
# 校验虚拟环境
python -c "import sys;print(sys.base_prefix!=sys.prefix)"
# 比对依赖差异
diff requirements.txt <(pip freeze)
问题现象
本地venv虚拟环境开发可正常运行,服务器/容器部署启动时报
ModuleNotFoundError,缺失依赖包,排查发现本地与部署端Python解释器、依赖清单不匹配。复现步骤
pip install未更新requirements.txt期望优化
本地虚拟环境开发正常,部署启动报模块缺失,根源为环境未激活、依赖清单未锁定。
建议项目补充标准化启动脚本与环境校验命令,方便快速定位Python解释器、依赖差异问题。
附简易排查命令: