当前位置: 首页 > 工具软件 > BaGet > 使用案例 >

文档保密服务器搭建教程,使用BaGet 搭建私有nuget 服务器

赵智勇
2023-12-01

使用BaGet 搭建私有nuget 服务器

netNugetBaGet

引言

为了增强代码的安全性和企业团队开发的高效性,搭建私有的package 包管理服务器是很有必要的,搭建私有的类库管理服务有以下优点:

实现关键性代码保密

提供代码利用率

实现代码不同版本管理

使用BaGet 搭建本地私有nuget 服务器

BaGet 是GitHub上开源的一个项目,是一个轻量级NuGet和符号服务器,查看详情。

具体实现过程如下:

1.下载最新release 版本

在github 中下载最新的release版本,点击下载。

解压文件,修改appsetting.json 配置文件

具体配置操作可参考官方文档,

为了能够从nuget 库中获取其他的包文件,需要配置使用官放镜像。

{

...

"Mirror": {

"Enabled": true,

"PackageSource": "https://api.nuget.org/v3/index.json"

},

...

}

需要API Key 的可以配置自己的API Key,我是搭建简单的测试版本,所有就没有配置

"ApiKey": "oy2bgb2qfcnbd3hpge2a2qp3t5ud7khezf7zbyqhurg64u"

3.启动BaGet服务

启动服务的前提是要安装.NetCore SDK

在BaGet文件目录下执行:

dotnet BaGet.dll

打开浏览器,运行http://localhost:5000 即可看到nuget 服务已启动

2.生成.nupkg 包文件

为了测试本地nuget 服务器是否可用,在vs中新建一个测试项目,以下简单的代码。

namespace Easten.Core

{

public class Handler

{

public string Name { get; set; }

public bool IsLock { get; set; }

public void GetValue(int abc,out object value){

value=abc * 10.3;

}

}

}

使用nuget 命令打包可执行文件

1.使用nuget 命令之前需要安装nuget.exe,点击安装,安装完成之后在系统变量中进行配置才可通过命令调用。

2.验证nuget 有无安装和配置成功,可打开cmd 或者powershell输入 nuget

C:\Windows\System32>nuget

NuGet Version: 5.0.2.5988

3.将需要打包的测试项目编译成功后,在项目.csproj目录中打开cmd 或者powershell 并执行:nuget spec

PS F:\个人\开发\技术\Nuget\NugetTest\Easten.Core> nuget spec

已成功创建“Easten.Core.nuspec”。

4.用文本编辑器将上述命令执行完成的.nuspec 文件进行编辑。

Dongteng

1.0.0

ceshiceshi

Dongteng

$author$

http://LICENSE_URL_HERE_OR_DELETE_THIS_LINE

http://PROJECT_URL_HERE_OR_DELETE_THIS_LINE

http://ICON_URL_HERE_OR_DELETE_THIS_LINE

false

dongteng test

Summary of changes made in this release of the package.

Copyright 2019

Tag1 Tag2

根据实际的需求修改,一般修改id、version、authors、description等

5.修改完以上信息后执行命令:nuget pack,进行打包.正常结果如下

PS F:\个人\开发\技术\Nuget\NugetTest\Easten.Core> nuget pack

正在尝试从“Easten.Core.csproj”生成程序包。

MSBuild auto-detection: using msbuild version '16.200.19.32702' from 'D:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\bin'.

正在打包“F:\个人\开发\技术\Nuget\NugetTest\Easten.Core\bin\Debug”中的文件。

正在对元数据使用“Easten.Core.nuspec”。

Successfully created package 'F:\个人\开发\技术\Nuget\NugetTest\Easten.Core\Dongteng.1.0.0.nupkg'.

3.发布.nupkg 包,并在项目中恢复使用

1.运行命令行,将包文件推送到本地nuget服务器中,执行命令:(如果设置了Key,则需要在包名之前添加对应的ApiKey)

dotnet nuget push -s http://localhost:5000/v3/index.json Dongteng.1.0.0.nupkg

2.提示推送成功之后在浏览器中刷新服务,查看推动的内容。

3.在vs 中新建项目,打开nuget 程序包管理控制台,在配置程序包源,指向:http://localhost:5000/v3/index.json

4.在控制台中执行包安装,即安装完成。

PM> Install-Package Dongteng -Version 1.0.0

5.编写测试代码,执行调用

class Program

{

static void Main(string[] args){

var a = new Easten.Core.Handler();

a.GetValue(222, out var ss);

}

}

通过以上步骤即可完成基础的本地Nuget 服务的搭建及package 包的发布于安装,比较简单。

知识拓展 ,使用NuGet Package Explorer 打包工具对需要发布的程序包执行打包处理

 类似资料: