如何将文件从docker容器共享到主机

我有一个运行良好的docker集装箱。 它在目录/Project/userfiles.txt生成一些文件。 我需要这些文件来进行一些testing。 但是,当这个容器停止时,一切都被删除。 所以我需要将这个文件从容器复制到主机。

我有一个正在生成文件的容器中运行的python应用程序。 我想要一些命令或任何方式,通过我可以发送userfiles.txt主机在容器停止时结束。

要做到这一点,我可以使用docker cp命令,我试了一下,但它给了我一个错误docker not found作为docker没有安装。

我怎样才能从容器共享文件到主机?

使用一个 (一个绑定挂载)来确保/ Project中写入的文件是持久的。

卷

这意味着你需要docker用-v /host/path:/Project选项运行你的镜像。
请参阅“ 使用绑定安装 ”获取最简单的方法(即与容器共享主机文件夹)

在主机上使用docker cp而不在容器内。 在你的情况下,命令可能看起来如下 –

$ docker cp mycontainer:/Project/userfiles.txt userfiles.txt

命令完成后,您将从运行docker cp命令的目录中的主机上获取该文件。

PS – 我只是检查,即使你的容器处于停止状态,它的工作原理。 例如 –

$ docker cp 9059e95cbe33:/etc/rc.local rc.local

9059e95cbe33 – 已退出容器ID /名称