2020年8月3日星期一

十分钟搭建自己的私有NuGet服务器

目录

  • 前言
  • 开始
    • 搭建BaGet
    • 上传程序包
    • 在vs中使用
    • 其他
  • 最后

前言

NuGet是用于微软.NET(包括 .NET Core)开发平台的软件包管理器。NuGet能够令你在项目中添加、移除和更新引用的工作变得更加快捷方便。

通常使用NuGet都是官方的服务,但你有没有想过搭建自己的NuGet呢?在私有的NuGet上托管一些自己的类库,公司内部的类库等。。。搭建私有NuGet的方法有很多,比如NuGet.Server、ProGet、MyGet等等。本文使用的是BaGet,搭建过程也非常简单,下面进入正题。

开始

搭建BaGet

BaGet是一个构建于ASP.NET Core 基础上的 NuGet V3 服务器的开源实现。

github地址:https://github.com/loic-sharma/BaGet

下载release包,我下载的是最新预览版,你也可以选择其他版本:

https://github.com/loic-sharma/BaGet/releases/download/v0.3.0-preview4/BaGet.zip

你可以按需要修改一下端口配置,默认是5000:

在解压目录下打开命令行,执行:dotnet BaGet.dll

浏览器访问:

这样,NuGet服务就搭建完成了,是不是很简单?

上传程序包

随便创建一个类库项目用于测试:

右键项目,选择打包:

打包完成会得到一个nupkg文件:

当然,你也可以选择Release模式:

看一下Upload命令:

在上面打包目录下打开命令行执行:dotnet nuget push -s MyTestLibrary.1.0.0.nupkg

再次查看Packages:

在vs中使用

在vs2019中打开:工具-选项-NuGet包管理器-程序包源。添加一个源,输入名称,源 src="https://img2020.cnblogs.com/blog/610959/202008/610959-20200803153959710-285473415.png" alt="" loading="lazy">

接下来就可以正常使用了:

其他

程序包的作者,说明,版本号等信息可以在这里修改:

依赖项也完全不用担心:

最后

因为BaGet是基于ASP.NET Core开发,所以天生跨平台,你可以在windows,mac,linux或者docker中轻松部署。另外,BaGet也没有复杂的环境依赖,数据库默认Sqlite,很轻量,部署起来非常容易。

当然,本文一开始也提到,搭建私有NuGet的方式有很多,如有需要可以参考微软官方说明:https://docs.microsoft.com/zh-cn/nuget/hosting-packages/overview

十分钟搭建自己的私有NuGet服务器汽配品类数据解读OCEANUS卖家助手使用指南亚马逊账号解封秘诀海运爆料:亚马逊将宣布退出中国,内部员工开始找工作?亚马逊员工监听真相:Alexa App内含开关可防止监听!罗湖火车站离哪个地铁站最近?从哪个出口出?元旦放几天假,具体怎么放?圣诞节和女朋友怎么过好?

没有评论:

发表评论