【问题标题】:Docker Copy failed no source files were specifiedDocker Copy 失败,没有指定源文件
【发布时间】:2021-03-19 01:13:19
【问题描述】:

我正在尝试在我的 dockerfile 中复制一个 jar 文件。当我运行构建时,我可以在 target/dockerbuild 下看到 jar。但 docker 没有看到该文件,我收到以下错误。

 COPY failed: no source files were specified

我的 docker 文件中有这些行用于复制操作:

ENV MY_HOME=/usr/local/myhome
COPY target/dockerbuild/my.jar $MY_HOME

为什么jar虽然存在于目标下却找不到。

【问题讨论】:

  • 您正在运行的确切 docker build 命令是什么?源代码树中的 Dockerfile 在哪里:

标签: docker maven dockerfile


【解决方案1】:

您的错误看起来可能是以下情况之一:

  • 指定路径中不存在该文件
  • 路径不存在(相对于构建上下文 - 如果您使用“docker build.”,那么指定的路径必须相对于当前目录存在)

请您分享您构建 docker 映像所运行的内容(以便我们查看构建上下文)以及您的目录结构

【讨论】:

    【解决方案2】:

    那个错误说文件target/dockerbuild/my.jar不存在。 Dockerfile中COPY的架构是:

    COPY {file in your host} {path of target in docker image}
    

    【讨论】:

    • 我不明白你的意思。我的意思是 jar 文件存在于我的主机中,但复制命令找不到/看到它。
    • 你的文件是jar?例如,您不能在 dockerfile 中使用带有副本的 tar 文件
    【解决方案3】:

    验证您的 .dockerignore 在您的异常中没有该路径(目标)

    【讨论】:

    • 我没有 .dockerignore 文件。
    • 你能粘贴你的 dockerfile 吗?
    猜你喜欢
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-02
    • 1970-01-01
    • 1970-01-01
    • 2021-05-17
    • 1970-01-01
    相关资源
    最近更新 更多