用预先存在的数据创buildDocker卷

我有一个MySQL映像,我从中启动一个容器。 我设置了dbs,导入了sql-dump文件,并在每次创build容器时创build用户。

当我在容器上工作时,我创build了存储在MySQL中的各种数据。

我想将这些额外的数据保存在数据容器[DVC]中,以便我可以将DVC交给同事,并从我停下来的地方继续。

问题是他也会启动一个MySQL容器,初始程序将从头开始重复。

正如我所读到的,如果我--volumes-from挂载[ --volumes-from ]卷[ /etc/mysql/var/lib/mysql ],已经存在的数据将被覆盖,并且不可读。

是否有可能使用目录中已经有数据的卷?

简短的答案是否定的,但那是因为你的容器走错了路。

这就是为什么你的图片不应该包含静态数据。 保持静态的东西在图像中,他们在数据容器中dynamic的东西。 (和一个启动脚本来dynamic地评估任何需要它的东西)

你也许可以使用docker cp将文件解压缩到一个数据容器中,或者直接将本地文件系统挂载到一个新的挂载点,然后在重新挂载之前使用tar / rsyncdocker exec ,但实际上我build议重新构build您的映像,以便始终为其数据使用数据容器。