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

如何将Linux机器文件夹复制到Docker容器?COPY命令报错求助

Docker COPY 报错排查与修复

问题根源

COPY指令的源路径是基于构建上下文(Dockerfile所在目录)的,不是宿主机的全局绝对路径。你写的/home/folder1/*会让Docker在构建上下文目录里查找/home/folder1,而你的folder1实际和Dockerfile在同一层级,所以找不到对应目录,触发no such file or directory错误。

修复步骤

  1. 修正COPY源路径:因为folder1、folder2和Dockerfile同属一个目录,直接用相对路径即可,不需要绝对路径。
  2. 简化Dockerfile(可选):COPY指令会自动创建不存在的目标目录,所以提前用RUN mkdir的步骤可以省略。

修正后的Dockerfile示例:

FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive 
RUN apt-get update
WORKDIR /home/
# 直接复制,目标目录不存在会自动创建
COPY folder1/* /home/folder1/
COPY folder2/* /home/folder2/

额外注意

构建镜像时,确保指定的上下文是Dockerfile所在目录,比如执行:

docker build -t my-ubuntu-image .

这里的.代表当前目录(即Dockerfile和folder1、folder2所在的目录),是构建上下文的正确路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 06:52:05