如何备份 nexus 存储库管理器

Posted

技术标签:

【中文标题】如何备份 nexus 存储库管理器【英文标题】:How do I backup a nexus repository manager 【发布时间】:2010-10-17 04:07:27 【问题描述】:

关系书:http://www.sonatype.com/books/nexus-book/reference/。似乎没有花任何时间在应该如何备份一个 nexus 存储库上。如果我将我的快照和版本安装到这个本地存储库中,我似乎应该备份它。但是,我对备份任何可以从远程存储库轻松下载的内容并不感兴趣。

一些谷歌搜索似乎也没有揭示规范的答案,所以也许可以在这里记录下来。

谢谢, 内森

【问题讨论】:

【参考方案1】:

当你安装 Nexus 时,你会得到两个目录:

nexus-webapp-1.3.1.1/
sonatype-work/

我们已将应用程序与数据和配置分开。 Nexus 应用程序位于nexus-webapp-1.3.1.1/,数据和配置位于sonatype-work/nexus。这样做主要是为了方便升级,但它也有一个副作用,就是让备份 Nexus 安装变得非常容易。

简单的答案

Nexus 不会将存储库存储在数据库中,也不会做任何会妨碍对sonatype-work/nexus 下的文件系统进行简单备份的事情。如果您需要创建完整的备份,只需将sonatype-work/nexus 的内容存档即可。

更好的答案

如果您想要更智能的方法来备份 Nexus 安装,您肯定会想要备份 sonatype-work/nexus/confsonatype-work/nexus/storagesonatype-work/nexus/template-store 下的所有内容。如果要备份 Nexus 为代理存储库保留的元数据和文件属性,请备份 sonatype-work/nexus/proxy,尽管这不是必需的,因为有关代理存储库的信息将在请求属性时按需生成。

sonatype-work/nexus/logs 不需要备份,sonatype-work/nexus/indexer 中的 Lucene 索引也不需要备份。

Nexus Pro 答案

有一个 Nexus Professional 插件可以自动创建 Nexus 配置数据的备份。这个插件将解决sonatype-work/nexus/conf 目录的内容。如果您需要备份sonatype-work/nexus/storage 目录,则需要配置一些备份系统来备份该文件系统的内容。同样,与 Nexus Open Source 一样,目前备份 sonatype-work/nexus/indexersonatype-work/nexus/logs 的内容并没有真正的好处。

排除远程存储库的存储

在您的问题中,您提到要排除专门用于远程存储库的本地缓存的存储。如果您有兴趣这样做,则必须采取进一步的粒度级别,并仅排除与远程存储库对应的sonatype-work/nexus/storage 下的目录。

是否需要关闭 Nexus 进行备份?

Brian Fox 告诉我不,文件争用的唯一真正机会是indexer/ 目录中的文件。使用正在运行的 Nexus 实例备份 sonatype-work 文件系统应该没有问题。

顺便说一句,谢谢你的问题,这个答案很可能会被纳入下一版的 Nexus 书籍中。

【讨论】:

当你说:sonatype-work/nexus/config,你真的是指:sonatype-work/nexus/conf? 这是一个很好的答案! @BrianFox:关于备份部分,您是指 Linux/Unix,还是在 Windows 下也是如此? (我确信它可以在 Linux/Unix 下工作,但是如果打开文件进行读/写会发生什么,在 Windows 下会不会有问题?)。 nexus3 似乎改变了很多——对吗?【参考方案2】:

afaik nexus(免费版)没有任何备份功能,但它应该很简单,就像知道您的公司 groupId 并从 nexus 中的存储目录中获取它一样

但我也会安排完整的存储库备份,您永远不知道远程存储库何时关闭,何时最需要它们

【讨论】:

以上是关于如何备份 nexus 存储库管理器的主要内容,如果未能解决你的问题,请参考以下文章

除了 Nexus、Artifactory 和 Archiva,还有其他 Java 存储库管理器吗?

如何使用 sbt 访问安全的 Nexus?

Linux 环境下安装 Nexus 私服存储库

mssql数据库如何备份

处理本地存储库中旧快照的最佳方法?

Xcode Swift 包管理器错误 - 找不到存储库