【发布时间】:2021-12-20 20:55:57
【问题描述】:
对于集成测试,我创建了一个包含数据库的 Docker 卷。
- 用例 1:我想从完全相同的状态开始一遍又一遍地使用同一个数据库,并且我还想与其他开发人员共享它。
- 用例 2:有时,我想修改卷以包含其他测试的数据。
当我挂载卷时,对数据库的所有写操作都会修改卷,这是我要避免的。我知道可以将卷安装为只读,但这也不起作用,因为在测试期间数据库也是只读的。
我想要实现的是挂载具有写访问权限的卷,但没有在容器关闭后保持其状态。就像体积数据包含在图像本身一样。
我曾想过这样做 - 包括图像本身中的数据库 - 但在这种情况下,我的第二个用例(不时修改数据库以支持其他测试)似乎要复杂得多(从容器,在 docker 之外对其进行修改,然后使用该数据创建一个新图像。
谁能告诉我解决该问题的推荐方法?
【问题讨论】:
标签: docker docker-volume