Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 在Dockerfile中编译文件并将其移动到其他目录(Docker)_Image_Docker_Makefile_Directory_Dockerfile - Fatal编程技术网

Image 在Dockerfile中编译文件并将其移动到其他目录(Docker)

Image 在Dockerfile中编译文件并将其移动到其他目录(Docker),image,docker,makefile,directory,dockerfile,Image,Docker,Makefile,Directory,Dockerfile,我想编译一个makefile,并将生成的编译文件移动到另一个目录中。例如,如果我在目录中: WORKDIR /Directory1/ 及之后: RUN make 它将生成一个名为“abc”的编译文件。然后我想把这个文件移到另一个目录,我们称之为“Directory2”。这是我尝试过的,但不起作用: COPY /Directory1/abc/ /Directory2/ 有什么建议吗?Docker有一个概念 在dockerfile中,每个命令都会执行并创建不同的层,因此由make命令生成的层无

我想编译一个makefile,并将生成的编译文件移动到另一个目录中。例如,如果我在目录中:

WORKDIR /Directory1/
及之后:

RUN make
它将生成一个名为“abc”的编译文件。然后我想把这个文件移到另一个目录,我们称之为“Directory2”。这是我尝试过的,但不起作用:

COPY /Directory1/abc/ /Directory2/
有什么建议吗?

Docker有一个概念

在dockerfile中,每个命令都会执行并创建不同的层,因此由make命令生成的层无法被其他层访问

要使其工作,请在一次运行中使用make和copy命令。e、 g

RUN cd /Directory1/ && make && cp abc /Directory2/

首先,你应该始终准确地说出发生了什么(你收到了什么消息或错误等),而不是说“它不起作用”。这对任何帮助你的人都没有帮助。第二,文件名末尾是否有斜杠,如
/Directory1/abc/
?若然,原因为何?这将导致命令假定
abc
是一个目录,而不是一个文件。对不起,我是Docker和stackoverflow的新手。下一次我会确保这样做。(即使您在一个单独的命令中运行cp生成一个单独的层,这也可以正常工作。)太好了,非常感谢。这正是我想要的。