我在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/