You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker运行报No module named 'pandas'错误 已配置conda依赖问题排查

问题原因

你通过conda env create命令创建了名为plato_vrar的独立虚拟环境,pandas已经被安装到该环境中,但整个构建流程和镜像运行时都没有激活这个虚拟环境:ENTRYPOINT直接调用的是miniconda默认base环境的python解释器,base环境未安装pandas,因此触发依赖缺失报错。
另外你后续执行的pip install sagemaker-inference也仅安装到base环境,后续就算激活plato_vrar环境也会找不到该依赖。

解决方案

提供三种常用修复方案,任选其一即可:

  • 方案1:保留虚拟环境,所有操作指定目标环境执行
    修改Dockerfile相关命令,所有涉及依赖安装、脚本运行的操作都指定使用plato_vrar环境:
# 原有创建环境的命令不变
RUN conda env create -f condaEnv.yml python=3.9.7
# 在plato_vrar环境中安装sagemaker-inference
RUN conda run -n plato_vrar pip install sagemaker-inference

# 其余COPY、ENV配置不变
# 修改入口点为激活plato_vrar环境后运行脚本,--no-capture-output参数避免日志被conda拦截
ENTRYPOINT ["conda", "run", "--no-capture-output", "-n", "plato_vrar", "python", "/opt/ml/code/inference_code.py"]
  • 方案2:废弃独立虚拟环境,所有依赖安装到base环境
    如果不需要多环境隔离,直接将condaEnv.yml的依赖更新到默认base环境,不需要修改入口点:
# 替换原有conda env create命令
RUN conda env update -n base -f condaEnv.yml
# 原有pip install sagemaker-inference命令不用修改,默认安装到base环境
  • 方案3:直接指定虚拟环境的python绝对路径
    无需处理环境激活逻辑,直接调用plato_vrar环境下的python解释器即可:
# plato_vrar环境的python默认路径为/opt/conda/envs/plato_vrar/bin/python,直接作为入口点
ENTRYPOINT ["/opt/conda/envs/plato_vrar/bin/python", "/opt/ml/code/inference_code.py"]
# 注意此方案下sagemaker-inference也要安装到plato_vrar环境,参考方案1的安装命令

内容的提问来源于stack exchange,提问作者Nitika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 20:15:02