我喜欢使用docker & docker-compose适用于开发和生产环境。如何防止数据库泊坞窗被重建并丢失生产数据
但在我的工作流程,我一直在考虑码头工人为一次性:
这意味着,如果我需要一个功能添加到我的搬运工,编辑我Dockerfile
,然后运行docker-compose build
和docker-compose up -d
和完成。
但是这一次,生产数据库也在Docker中。
我还需要在我的环境中某些更改(例如,配置备份),但现在我不能重新运行docker-compose build
,因为这将意味着所有的数据的损失......这意味着我需要输入码头工人(docker-compose run web /bin/bash
)并运行其中的命令,同时仍将其报告给我的本地Dockerfile
以跟踪我的更改。
有关于这种情况的最佳实践吗?
我想建立一个进程将转储数据库到容器破坏前的S3存储的,但它并没有真正扩展到广泛的DB ...
我以为做码头工人,没有破坏的(如何?),尽管这意味着丢失容器的可处置性。
我以为有一个特殊的分区,负责存储数据只有,并且在重建Docker时不会被破坏,尽管安装和解密都很困难。
那么是什么?
谢谢
我相信唯一的方法是将您的数据库安装到码头集装箱。它会将数据存储在外部,如果重建数据库容器,则不会丢失任何数据。 – Gabbax0r