我在ubuntu服务器上将docker安装为14.04.02。并且有一个用于svn-server的容器。

我附加到svn-docker-container,然后从源svn-server同步。
(通过使用svn-sync)

在那种情况下,我担心如果主机没有属性关闭,可能会丢失数据。数据丢失会发生吗?
(更新了svn存储库。但是主机已关闭。会发生什么?)

如果发生这种情况,防止数据丢失的最佳方法是什么?
(例如,使用-v选项在主机目录和容器目录之间连接)

最佳答案

据我了解,应该保留的任何数据存储都应该使用卷来实现。如果将所有应存储的数据写入卷,则该数据将存储在主机文件系统上。

我理解您的问题的方式是,您有一个svn-server-container和一个svn-container,并且您担心当svn-server-container异常关闭时会发生什么。
因此,我建议您至少使用服务器的卷,以便即使关闭服务器容器,也将服务器数据存储在主机上。即使您仅使用docker stop关闭服务器容器,如果不使用卷,数据也不会被存储。

另外,您可能想为svn-container使用一个卷,因此不必每次每次重新启动svn-container时都从服务器拉整个svn目录。

当然,如果相应的进程异常终止,则可能会破坏您的数据,因为也许还有一些写操作正在进行,然后被中断。但是,假设所有写操作都已完成,并且SVN本身不介意只是关闭它,那么这可能会很好地工作。

关于svn - 在docker中存储数据的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29486054/

10-16 02:20