1

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

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

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

问题是他还将启动一个 MySQL 容器,并且将从头开始重复初始过程。

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

是否可以将卷与已经包含数据的目录一起使用?

4

1 回答 1

1

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

这就是为什么您的图像不应包含静态数据的原因。将静态事物保存在图像中,将动态事物保存在数据容器中。(还有一个启动脚本来动态评估任何需要它的东西)

您可能可以使用 adocker cp将文件提取到数据容器中以一次性完成 - 或者只是通过将本地文件系统挂载到新的挂载点,然后在重新挂载之前使用tar/ rsyncwith docker exec- 但实际上我建议重建你的图像始终为它的数据使用数据容器。

于 2016-03-22T10:52:23.617 回答