如何托管我自己的nuget v3 Feed?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何托管我自己的nuget v3 Feed?相关的知识,希望对你有一定的参考价值。

我的组织为我们内部开发的软件包提供了几个nuget v2提要(.net应用程序消耗nuget.server)并重新托管第三方软件包(因为我们的构建机器没有Internet访问权限,我们审计开发人员在我们的产品中使用的软件包和如果我们没有包,我希望构建失败)。

每当我向nuget服务器添加任何需要nuget client 3.0+的软件包时,nuget服务器都会崩溃,因为它无法从这些软件包中读取元数据。如何托管我自己的nuget v3服务器/升级现有的nuget服务器以兼容v3?

答案

我最近写了一个nuget服务器aspnetcore中间件。

当然,实施是如此愚蠢,丑陋等... qazxsw poi

您可以在Startup.cs中进行设置

link

并访问http(s):// your-server-address [:port] /v3/index.json

出版:

public void ConfigureServices( IServiceCollection services )
{
    ...
    services.AddNugetServer(opt=>
    {
        opt.ApiKey = "This is a string used for adds or deletes your package(s)";
        opt.PackageDirectory = "/path/to/your/packages"; //default is current path + "/packages"
    });
    ...
}

public void Configure( IApplicationBuilder app, IHostingEnvironment env )
{
    ...
    app.UseNugetServer();
}
另一答案

我遇到了同样的问题,并做了一些研究。你可能已经解决了你的问题,但是在这里NuGet自己列出了一些可供选择的方法;免费和付费:dotnet nuget push -s http(s)://your-server-address[:port]/v3/package package.nupkg

简而言之,列表是

  • Visual Studio团队服务
  • MyGet
  • Inedo的ProGet
  • JFrog的Artifactory
  • NuGet服务器
  • Sonatype Nexus

我刚刚测试了ProGet,但即使它很容易安装和免费,它似乎也不及v3。

一旦他们获得处理v3提要的功能,我可能会切换到TeamCity本地用户。

目前我正在测试可以通过包下载的NuGet Server

Hosting Your Own NuGet Feeds

在Visual Studio中的Package-Manager中,用于.Net 4.5.x的新的空Web应用程序。

以上是关于如何托管我自己的nuget v3 Feed?的主要内容,如果未能解决你的问题,请参考以下文章

TeamCity NuGet Feed:配置Feed网址

托管您自己的 NuGet 和符号源服务器?

如何完全清空或删除VSTS包裹Feed?

Artifactory-如何配置远程nuget存储库-https://api.nuget.org/v3/index.json

如何在 TeamCity Nuget Feed 上删除特定版本的包?

如何正确引用nuget包,这样就不会对路径进行硬编码