将数据卷容器用作Docker中的单个数据库“后端”有什么好处?
我正在尝试掌握单独的数据卷容器的想法.在很多地方,我发现被主张是有益的(例如in this question),但是对于简单的一个数据库堆栈,使用单独的数据容器并没有任何意义. >它解耦了我的数据库容器-但是我为什么要那样?我不会更改数据库映像,因为我不在这里开发数据库. 当以某种方式共享数据时,我清楚地看到了这种方法在不同设置中的好处,但是作为“容器作为数据库”问题的解决方案,对我而言似乎只是另外的麻烦. 我想念什么? 最佳答案
我仍然在Docker开发的边缘,所以这只是根据我所读/听到的内容进行的有根据的猜测.回应您的失序点:
说您或下一个维护此系统的家伙,稍后再出现,并希望升级您的postgres版本(或任何SQL堆栈).您决定为新版本的新docker容器/映像创建新的docker容器/映像,将其分层放置在旧容器/映像之上会更容易.如果您的单个Docker容器上既有数据又有软件,则没有该选项.当然,您仍然可以搞乱数据量,但是不能通过解耦的服务器容器搞乱数据.
您可能现在不共享它;您可能永远也没有人可以分享.但这并不意味着您就不想在系统,应用程序,服务器等之间共享它.
可以,但是,如果要备份整个容器,则每次都在备份软件和数据,这是不必要的.如果要将数据从容器中转储出来,那么您实际上并没有考虑使用容器. 我看到具有分离的数据量的一个明显优势是在环境之间移动数据.假设您想要一个新的数据快照以在舞台环境中进行测试.只需获取产品容器备份并将其复制下来即可.如果您想截断旧数据或整理某些表以使其易于管理,可以很容易地想到一个构建代理程序启动一个连接到该备份的服务器容器并运行一些脚本或存储过程(您可能不想在其中使用您的产品容器出于安全原因). 您甚至可以拥有一个最小的数据容器,该容器上仅具有用于开发和测试的存根表架构.您可以为此使用一个单独的多合一容器,但是当您需要更新数据库版本时,必须更新多个容器,而不是创建一个已更新/新的容器并让它为您修改数据量. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |