10

如何在docker build命令期间将文件从 docker 容器复制到主机?

作为为我的应用程序构建 docker 映像的一部分,我正在其中运行一些测试,并且我想将测试运行的输出复制到主机(这是一个持续集成服务器)以进行一些报告。

4

2 回答 2

4

我不会在构建期间运行测试,这只会增加图像的大小。我建议您构建映像,然后运行它将主机卷挂载到容器中,并将工作目录更改为挂载点。

docker run -v `pwd`/results:/results -w /results -t IMAGE test_script
于 2014-11-25T07:15:50.133 回答
1

没有简单的方法可以做到这一点。卷仅在运行时创建。您可以从 docker 文件系统中获取它(例如,我的是 /var/lib/docker/devicemapper/mnt/CONTAINER_ID/rootfs/PATH_TO_FILE),但没有好的方法可以确定您的测试过程何时完成。您可以在完成后创建一个文件并执行 inotify,但这很难看。

于 2014-11-24T21:07:49.607 回答