2

我正在配置 Nexus Repository 3,我目前创建了两个不同的 blob 存储:defaultdocker.

default由maven和NuGet组成。

docker由docker组成(显然)。

以这种方式存储存储库有什么好处吗?

我应该将它们全部保存在一个 blob 存储中吗?

4

1 回答 1

3

根据我的经验,blobstore 配置的设置主要取决于以下内容。

  1. NXRM3 实例中的存储库数量。
  2. 存储库格式(Maven、NPM 等)。
  3. 人工制品的版本。更准确地说,如果存储库即将存储快照发布工件。

在我看来,以下选择并不是最好的。

  1. 所有存储库都映射到一个 blobstore 或仅映射到其中的几个(n:1 映射)。
  2. 每个存储库一个 blobstore(1:1 映射)。

首先,您在安排任务时会有很多开销。特别是Compact blob storeRebuild Maven repository metadata。其次,您将有大量的计划任务需要配置。

我们的 NXRM3 存储库主要由 Maven 人工制品组成。因此,我们决定创建三个独立的 blobstore。

  1. Blobstore 将托管存储库与 Maven版本绑定。
  2. Blobstore 将托管存储库与 Maven快照绑定。
  3. 带有 Maven工件的Blobstore 绑定代理存储库。

我们的快照存储库的内容会随着 Jenkins 的每次构建而迅速变化。因此,我们每天安排重新索引、删除快照和压缩 blobstore 的任务。在其他 blobstore 上,任务每周安排一次。

我相信没有关于如何配置 blobstore 的通用答案。我的建议是尽量减少运行计划任务的时间,将代理存储库和托管存储库分开。并且一定要考虑快照和发布推送和弹出操作在您的 blobstore 中。

于 2018-01-27T12:55:50.647 回答