首页 > 解决方案 > Docker:使用 docker-compose 与主机共享预填充的容器文件夹

问题描述

我有一个图像(一个网络应用程序),其中包含一个代码库var/www/html。当容器启动时,它会在启动过程中进一步生成一些工件(配置文件)var/www/html。我希望能够通过主机文件系统编辑这些文件,同时让它们在容器中保持活跃。

更新:澄清图像已包含文件夹中的文件。

我知道可以通过共享卷将主机文件夹映射(例如同步)到容器文件夹,例如docker run -d -v path/on/host:path/on/container myimage. 但是,这将有效地使用主机文件夹中存在的任何内容覆盖容器文件夹的内容。我想保留容器生成的文件。

我也知道可以使用 将文件从容器中复制出来docker cp <container id>:path/on/container path/on/host,这可能是一个中间步骤,但我只是找不到一个完整的例子来说明如何完成我想要的。

最好我想在一个 docker-compose 文件中完成这一切,因为我的设置中涉及其他容器(例如 mysql 容器)。但是,一系列 docker 命令也可以。

标签: dockerdocker-compose

解决方案


推荐阅读