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

构建Python Docker容器时找不到脚本文件的问题求助

问题分析与解决方法

你的问题出在Dockerfile指令的执行顺序上:

  • 先执行ADD manual_into_ckl.py .时,容器默认工作目录是根目录/,脚本被放到了/manual_into_ckl.py
  • 之后才设置WORKDIR /home/johnb切换工作目录
  • 最终CMD执行时,是在/home/johnb下查找脚本,自然找不到

有两种简单的修正方式:

方法一:先设置工作目录,再添加脚本

修改后的Dockerfile:

FROM python:3.10
# 先切换到目标工作目录
WORKDIR /home/johnb
# 此时ADD的`.`就是/home/johnb,脚本直接放到这里
ADD manual_into_ckl.py .
RUN pip install pandas 
CMD [ "python", "manual_into_ckl.py"]

方法二:ADD时指定目标路径

如果不想调整指令顺序,可直接把脚本加到目标目录:

FROM python:3.10
# 直接将脚本添加到/home/johnb目录下
ADD manual_into_ckl.py /home/johnb/
WORKDIR /home/johnb
RUN pip install pandas 
CMD [ "python", "manual_into_ckl.py"]

新手排查小技巧

以后再遇到类似文件找不到的问题,可启动容器进入交互式bash查看文件位置:

docker run -it <你的镜像名称> bash

用ls、find命令确认文件实际路径,能更快定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 11:20:32