使用 BaGet 搭建 .NET 私有 NuGet 服务器并配置 VS 引用
为解决类库发布到公共源的公开性风险,本文将指导如何使用 BaGet 这一开源工具,在本地或内网环境快速搭建私有的 NuGet 服务器。涵盖从下载配置 BaGet 服务到使用 Visual Studio 上传及调用私有程序包的全流程。
私有 NuGet 服务的准备
在公共网络中上传 .NET 程序包(.nupkg)意味着所有用户均可访问。对于企业内部门禁、核心算法或未公开的底层组件,将其存储在私有环境中更为安全。BaGet 是基于 GitHub 开源的轻量级 NuGet 和符号服务器,是官方 NuGet V3 协议的开源实现,相比传统的 NuGet.Server 功能更完善,且易于部署。
第一步:部署 BaGet 服务器环境
首先需确保运行环境已安装 .NET Core SDK。若未安装,请提前获取对应的 SDK 版本以支持 BaGet 的运行。
第1步:下载 BaGet 发行版
访问 BaGet 的官方 Release 页面,选择稳定的版本进行下载。通常推荐下载压缩格式的 Release 包:
- 下载地址:
https://github.com/loic-sharma/BaGet/releases - 文件示例:
BaGet.zip
第2步:配置服务端参数
解压下载到的 BaGet.zip 至本地工作目录。找到根目录下的 appsettings.json 配置文件。根据实际业务需求进行必要修改:
- API Keys:建议填入密钥以启用上传验证保护,避免被恶意上传垃圾包;测试阶段可暂时留空或不填。
- 服务器地址:按官方文档规范调整默认监听设置。
第3步:启动服务进程
在该解压目录的命令行终端中,执行以下命令启动 Web 服务:
dotnet BaGet.dll
当看到输出日志提示服务正在运行时,表示启动成功:
此时,打开浏览器访问 http://localhost:5000,若能查看到 BaGet 提供的页面,即代表 NuGet 私有服务已经正常运行:
第二步:制作并推送私有程序包
下面以测试类库为例,演示如何创建一个 NuGet 包并将其推送到刚才搭建的私有服务器上。
第1步:生成 .nupkg 文件
在 Visual Studio 中创建一个用于测试的项目,如 “繁简体相互转换” 工具库。完成代码编写后,右键点击项目,在弹出的菜单中选择 “打包”:
打包完成后,会在项目的输出目录下生成对应的 .nupkg 文件。该文件的版本号可在项目属性的 “打包” 选项卡中预先配置:
第2步:确认推送命令
返回 BaGet 的 Web 页面,浏览其提供的说明信息,找到对应的 Push(推送)命令格式。它通常包含服务器的虚拟索引地址以及 API Key(如有):
回到生成 .nupkg 文件的文件夹位置,打开命令行窗口。执行带参数 -s 指向私有服务器地址的命令(注意替换为你的实际文件名):
dotnet nuget push -s http://localhost:5000/v3/index.json XiongZeUtils.1.0.3.nupkg
提醒:此处执行的命令行路径必须位于打包生成的 .nupkg 所在目录,而非之前启动 BaGet 的目录。
推送成功后,刷新浏览器上的 Packages 列表页即可查到刚才上传的包,表明私有发布操作已完成:
第三步:在 Visual Studio 中使用私有包
最后一步是在开发环境中引入该私有源。打开 Visual Studio (VS2019/VS2022),依次点击顶部菜单:
工具 → 选项 → NuGet 包管理器 → 程序包源。
点击“+”号添加一个新源,填写任意名称,并在“源”栏输入刚才的地址 http://localhost:5000/v3/index.json,保存设置:
之后打开包管理器控制台或管理解决方案 NuGet 包界面,查询时即可看到之前在私有源发布的程序包,实现了本地或团队内部的封闭引用:
以上就是使用 BaGet 搭建和运行 .NET 私有 NuGet 服务器的详细内容,更多关于在 Visual Studio 中配置和使用私有 NuGet 源的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













