十分钟搭建本身的私有NuGet服务器-BaGet

前言

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

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

开始

搭建BaGet

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

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

下载release包,我下载的是最新预览版,你也能够选择其余版本:数据库

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

你能够按须要修改一下端口配置,默认是5000:windows

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

浏览器访问:http://localhost:8020/服务器

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

上传程序包

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

右键项目,选择打包:

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

固然,你也能够选择Release模式:

看一下Upload命令:

在上面打包目录下打开命令行执行:dotnet nuget push -s http://localhost:8020/v3/index.json MyTestLibrary.1.0.0.nupkg

再次查看Packages:

在vs中使用

在vs2019中打开:工具-选项-NuGet包管理器-程序包源。添加一个源,输入名称,源:http://localhost:8020/v3/index.json

接下来就能够正常使用了:

其余

程序包的做者,说明,版本号等信息能够在这里修改:

依赖项也彻底不用担忧:

最后

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

固然,本文一开始也提到,搭建私有NuGet的方式有不少,若有须要能够参考微软官方说明:https://docs.microsoft.com/zh-cn/nuget/hosting-packages/overview

相关文章
相关标签/搜索