【问题标题】:Nuget server sometimes not found packageNuget 服务器有时找不到包
【发布时间】:2014-12-09 08:55:58
【问题描述】:

我有自己的 nuget 存储库、本地托管 (nuget.server) 和带有包还原构建步骤的 Teamcity。

有时我会发现错误,比如

[12:10:06]Unable to find version '1.2.0-alfa00243' of package 'ReportsBase'.

似乎,那个包不存在,但它存在!我检查了 Packages 文件夹,并检查了 IIS 的日志,发现了非常奇怪的行为。第一个请求 - 好的,找到包,第二个和第三个 - 未找到,然后找到。

2014-12-09 08:08:27 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.188 NuGet+Command+Line/2.8.50506.491+(Microsoft+Windows+NT+6.1.7601+Service+Pack+1) 200 0 0 185

2014-12-09 08:10:06 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.104 NuGet+Command+Line/2.8.50506.491+(Microsoft+Windows+NT+6.1.7601+Service+Pack+1) 404 0 0 37870

2014-12-09 08:10:06 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.188 NuGet+Command+Line/2.8.50506.491+(Microsoft+Windows+NT+6.1.7601+Service+Pack+1) 404 0 0 47184

2014-12-09 08:10:11 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.104 NuGet+Command+Line/2.8.50506.491+(Microsoft+Windows+NT+6.1.7601+Service+Pack+1) 200 0 0 381

这通常发生在刚刚添加的包中。 (几秒钟前)

为什么会发生如此奇怪的事情?

【问题讨论】:

  • 失败的请求有不同的 IP 地址。地址解析为什么?
  • NuGet 包的来源是哪里?您是否在构建过程中创建新包(例如用于 Octopus 部署?)如果是这样,那么您应该创建对 Team City 构建步骤的依赖项,以等待版本发布到 NuGet 存储库。
  • 我已经调试了 nuget 服务器,可能找到了原因。我的 repo 中有大约 8k 个包,并且在每次推送新包缓存重新创建之后。有时会推送 5-10 个包,缓存会重新创建 5-10 次。这可能需要很长时间,并且可能会在超时的情况下发生此 404 错误。所以,我通过安装 Nuget Gallery 而不是 NugetServer 解决了这个问题,一切正常。

标签: nuget nuget-server nuget-package-restore


【解决方案1】:

简单的 NuGet.Server 包并非专为少数包而设计。它使用内存中的哈希表,并监视文件系统的更改。如果您有任何其他用途,您需要获得一个真正的私人服务器。这些私有存储库还具有更易于设置和维护的优势。

Inedo 的 ProGet 是迄今为止最受欢迎的本地 NuGet 服务器选择,但 JFrogSonatype 也有选项。

MyGet 是迄今为止云托管 NuGet 服务器最受欢迎的选择,但可能还有其他选择。

您也可以尝试启动 NuGet.org 的实例,但它从未设计为用作私有包存储库...只是 用于私有包的公共 NuGet.org。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-21
    • 2015-08-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多