Docker 添加没有这样的文件或目录

Docker add no such file or directory

以下是我的根目录:

andrej:
  - docker/CodeExperiments.jar
  - docker2/Dockerfile

这是我的 Dockerfile 的内容:

FROM java:8
ADD docker/CodeExperiments.jar docker/
RUN javac BirthDayTask.java

这是我的命令 运行:

docker build -t newfile docker2

这会导致以下错误消息:

ADD failed: stat /var/lib/docker/tmp/docker-builder946291442/docker/CodeExperiments.jar: no such file or directory

我做错了什么?

CodeExperiments 位于 docker 文件夹中,而 Dockerfile 位于 docker2 中。

将它们放在同一个文件夹中或至少 CodeExperiments 放在 Dockerfile 的子文件夹中并从那里引用。

当你

ADD docker/CodeExperiments.jar docker/

它相对于上下文目录,这是docker build命令中命名的目录。这意味着您需要将当前目录作为目录参数传递给 docker build。默认情况下,它会在该目录中查找 Dockerfile,因此您还需要一个 -f 选项来指向备用文件。

一起看起来像:

docker build -t newfile -f docker2/Dockerfile .