问题背景
在基于 registry.cn-shenzhen.aliyuncs.com/all_dev/dev:invoice-base
镜像构建 Docker 容器时,我们遇到了一个常见的 Python 依赖管理问题:
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts
这个错误表明 pip 在尝试解决项目依赖关系时遇到了无法自动解决的冲突,导致构建过程失败。
问题分析
经过排查,发现问题的根源在于:
-
阿里云 OCR SDK 与其他包的版本冲突:
alibabacloud-ocr-api20210707
包依赖特定版本的alibabacloud-tea-openapi
和alibabacloud-tea-util
,这些与项目中其他包的依赖要求可能冲突 -
基础镜像预装包的干扰:基础镜像可能已经预装了一些包,这些包与项目要求的版本不兼容
-
依赖解析器的限制:新版 pip 的依赖解析器更加严格,会拒绝安装存在冲突的依赖组合