在构build过程中将文件从容器复制到主机

docker build命令中,如何将文件从Docker容器复制到主机?

作为为我的应用程序构buildDocker镜像的一部分,我在里面运行了一些testing,我想将testing运行的输出复制到主机(这是一个持续集成服务器)来做一些报告。

我不会在构build期间运行testing,这只会增加图像的大小。 我build议你构build镜像,然后运行它将一个主机卷挂载到容器中,并将工作目录更改为挂载点。

 docker run -v `pwd`/results:/results -w /results -t IMAGE test_script 

有没有简单的方法来做到这一点。 卷只在运行时创build。 你可以把它从docker文件系统中拿出来(例如我的是/ var / lib / docker / devicemapper / mnt / CONTAINER_ID / rootfs / PATH_TO_FILE),尽pipe没有什么好的办法来确定你的testing过程是否完成。 你可以创build一个文件,当它完成,并做一个inotify,但这是丑陋的。