一款轻量级的NuGet服务器

news2025/7/14 1:48:24

一、简介

BaGet (发音为“baguette”) 是一个轻量级的 NuGet、Symbol 服务器。它是开源的、跨平台的和云化的,可以运行再自己得电脑、Docker、Azure、AWS、Google Cloud 、Alibaba Cloud (Aliyun) 等。支持 MySQL、SQLite:、SqlServer、PostgreSQL、Azure Table Storage 这些数据存储方式。

二、部署

BaGet 部署有两种方式,一种是使用 BaGet 已经准备好的 Applicatio 发布文件,另一种是使用 Source Code 自己进行发布,当然第一种相对简单,也是常用的部署方式。

2.1 Realease

在 GitHub 找到 BaGet 仓库,如下图点击 “BaGet latest realease” 进行下载 BaGet 官方提供的 realease 文件
在这里插入图片描述
跳转到下面页面后,点击 BaGet.zip 进行下载 BaGet 发布的程序文件
在这里插入图片描述
下载完成后 ,对 BaGet.zip 解压, 可以看到程序的发布文件,可以部署到自己想部署的地方,如下图
在这里插入图片描述
试着在本地运行一下看看,在 Windows Terminal 中打开,然后运行下面命令,可以看到已经启动,通过本地 5000、5001 端口即可访问

dotnet BaGet.dll

在这里插入图片描述
访问 http://localhost:5000/ 可以看到如下界面,是不是与 nuget.org web 很像,这里可以查询我们的包等操作
在这里插入图片描述
如果有的小伙伴想装 B,隐藏 BaGet 标识,在 BaGet\wwwroot_content\BaGet.Web\css\site.css 添加下面 css 代码,即可把 BaGet 相关的链接隐藏

.main-container > div:last-child {
    display: none;
}
.navbar-nav > li:last-child {
    display: none;
}

在这里插入图片描述

2.2 Source code

源码的方式,其实也就是自己发布一下 Source code 程序,好处是自己可以对 Source code 进行修改进行定制
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、Packages、DB

packages 文件夹,存储着 push 的包文件,这个文件夹及文件夹内的文件不可删除,删除或者丢失后会导致包下载失败
在这里插入图片描述
DB 文件,在没有配置在线数据库的情况下,会使用默认的 SQLite DB,其文件存储在发布文件目录下,名为 baget.db 存储着包的各种信息,用于查询包信息使用,SQLite DB 文件可以使用 SQLiteSpy 进行查看
在这里插入图片描述
在这里插入图片描述

四、配置

BaGet 也有一些非常多得配置,如 ApiKey、复推策略、包存储介质等

4.1 ApiKey

ApiKey 用于安全问题, push 包时候的一个密码,可以防止不让别人随便推送。如下:

{
    "ApiKey": "NUGET-SERVER-API-KEY",
    ...
}

4.2 覆盖

正常情况下,push 一个包,如果 id 和版本已经被占用,是推送不上去的。可以通过设置来配置 BaGet 覆盖已经存在的包。如下:

{
    ...
    "AllowPackageOverwrites": true,
    ...
}

4.3 包存储

包的存储,默认是存储在程序目录下面,也可以配置 OSS 进行存储。如下:

{
    ...
  "Storage": {
    "Type": "FileSystem",
    "Path": ""
  },
    ...
}  
{
    ...
    "Storage": {
        "Type": "AliyunOss",
        "Endpoint": "oss-us-west-1.aliyuncs.com",
        "Bucket": "foo",
        "AccessKey": "",
        "AccessKeySecret": "",
        "Prefix": "lib/baget" // optional
    },
    ...
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/17736.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

XSS-labs靶场实战(七)——第16-18关

今天继续给大家介绍渗透测试相关知识,本文主要内容是XSS-labs靶场实战第16-18关。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调:严禁对…

Windows系统封装初始化工具sysprep

Windows系统封装初始化工具sysprep Sysprep简介 Sysprep程序是微软公司用来配置Microsoft Windows全新安装的一个工具,是为方便企业用户部署系统而设计的。 Sysprep(系统准备)可以准备 Windows 客户端或 Windows Server 安装以生成映像。 Sys…

7.2 Verilog 文件操作

Verilog提供了很多可以对文件进行操作的系统任务。经常使用的系统任务主要包括: 文件开、闭:$fopen, $fclose, $ferror文件写入:$fdisplay, $fwrite, $fstrobe, $fmonitor字符串写入:$sformat, $swrite文件读取:$fget…

计算机毕业设计ssm+vue+elementUI 校园短期闲置资源置换平台

项目介绍 随着互联网时代的到来,人们的生活结构发生了很大的变化,网上交易占据了人们日常交易的很大一部分,这个比例还会继续增长。社会在飞速发展同时伴随着问题的出现,生活节奏的加快,使闲置物品处理成了一个突出问…

VFP发送XML与MSSQL的互操作, 解决一个传大表查询的大大大问题

瓜哥有个需求场景,比如要按订单号查一批订单,数量2w个,如果用in拼接要写好长的语句,用string_split又限制长度8000。所以想想有什么什么好招。 瓜哥就是MYFLL作者木瓜大侠 那就可以传入XML,让MSSQL把XML解析成表&#…

【实验十二】决策树判断你是否可学python

一、实验目的 1.熟练安装scikit-learn扩展库(本库有许多依赖库,如该库建立在NumPy,SciPy和matplotlib之上,一般要先安装这些扩展库后,再安装。当然在线安装的话也会一次性将依依赖库安装完,前提是这些库的网站能连上)…

(杂谈)世界上本没什么prompt,有的只是加权平均——关于NLP中embedding的一点思考

(杂谈)世界上本没什么prompt,有的只是加权平均——关于NLP中embedding的一点思考0. 写在前面1. 问题的提出2. 备受嫌弃的NSP,为什么效果不佳2. 比句子更小的片段——Span Bert3. 更加纯粹的表示方法——PURE4. 风光无限的prompt&a…

编写bat脚本调用hexview进行软件签名

上一篇《编写Bat脚本调用Vecotr工具软件HexView》介绍了如何使用bat脚本编写Bat脚本调用Vecotr工具软件HexView进行文件合并、填充、AES加密、SHA256哈希校验等基本操作,这篇介绍一下编写bat脚本调用hexview进行软件签名的具体用法,在编程过程中体会代码…

Linux--shell脚本详解

目录 一、shell脚本的类型 二、read命令 三、数组 3.1 定义数组 3.2 赋值数组元素 3.3 取得元素个数 3.4 取得单个元素长度 3.5 取消或删除数组中的元素 四、赋值时使用引号的作用 五、位置参数 5.1 $* 和 $的区别 六、预定义变量 七、变量的算术运算 7.1 双小括…

[一篇读懂]C语言三讲:选择、循环

[一篇读懂]C语言三讲:选择、循环1. 选择if-else讲解1 关系表达式与逻辑表达式计算表达式的过程2 if-else语句【例】判断输入值是否大于02. 循环while,for讲解,continue,break讲解1 while循环【例】计算1到100之间所有整数之和2 fo…

【MySQL进阶】B+树索引的使用

【MySQL进阶】B树索引的使用 文章目录【MySQL进阶】B树索引的使用一、索引的代价二、B树索引适用的条件1、全值匹配2、匹配左边的列3、匹配列前缀4、匹配范围值5、精确匹配某一列并范围匹配另外一列6、用于排序7、用于分组三、回表的代价1、回表的代价2、覆盖索引四、如何挑选索…

论文管理系统(登录功能)

目录 一、后端部分 1.1 实体类 1.2 UserMapper类 1.3 Service层 接口 实现类 1.4 controller层 1.5 拦截器 二、前端部分 效果图 源码如下 代码讲解 准备工作和数据库都已经准备好了,接下来我们来写登录功能,登录功能我们通过mybatisplus来码写,所以不需要在UserMapper.…

台灯到底对眼睛好不好?2022精选眼科医生推荐护眼灯

台灯是我们最常见的照明工具了,台灯对眼睛会有一定的伤害的,光对人的视觉会产生一些影响的,选择质量过关的护眼台灯,对人的眼睛伤害是比较小的,基本上在光照进行优化,做到无可视频闪、无眩光等,…

巯基化PEG试剂——N3-PEG-SH,Azide-PEG-Thiol,叠氮-聚乙二醇-巯基

巯基化PEG化学试剂叠氮-聚乙二醇-巯基,其英文名为Azide-PEG-Thiol(N3-PEG-SH),它所属分类为Azide PEG Thiol PEG。 此peg试剂的分子量均可定制,有:5k N3-PEG-SH、20k 叠氮-聚乙二醇-巯基、10k N3-PEG-SH、…

[11]重绘与回流

在看今天的分享之前,希望大家先关注一下,因为你可以免费获取一枚前端路上的陪跑师。 什么是回流 回流:英文是reflow 当render tree中的一部分(或全部),因为元素的规模尺寸、布局、隐藏等改变 而需要重新构建,这就是回流…

基于web在线餐饮网站的设计与实现——蛋糕甜品店铺(HTML+CSS+JavaScript)

👨‍🎓静态网站的编写主要是用HTML DIVCSS JS等来完成页面的排版设计👩‍🎓,常用的网页设计软件有Dreamweaver、EditPlus、HBuilderX、VScode 、Webstorm、Animate等等,用的最多的还是DW,当然不同软件写出的…

你的新进程是如何被内核调度执行到的?(上)

所谓的运行队列到底长什么样子、新进程是如何被加入进来的、调度是如何选择一个新进程的、新进程又如何被切换到 CPU 上运行的,这些细节咱们都没提到。今天就来展开看看这些进程运行背后的原理。 通过今天的文章,你将对以下两个问题有个更深入的理解。 …

mysql高手进阶优化篇

​MySql理论 逻辑架构 连接层-->服务层-->引擎层-->存储层 存储引擎 查看方式 1.查看mysql现在提供的搜索引擎--->show engines 2.查看mysql当前默认存储引擎show variables like storageenginestorage_enginestorageengine 存储引擎对比 MyISAM: BTree叶节…

Vue快速入门二:Vue绑定事件、Vue中的this指向、增加class选择器、动态创建标签

Vue定义点击事件&#xff1a; <body><div id"box"><button click"handleChange()">change</button></div><script>var vm new Vue({el:"#box",//定义方法methods:{//handleChange:function(){}//简写法&a…

数据结构:单链表

用&#xff08;带头节点&#xff09;单链表完成图书统计。节点结构包括书籍编号&#xff0c;书籍名以及对应作者。功能包括增加&#xff08;尾插法和指定位置插入法&#xff09;、删除、修改、查看。 一、定义节点结构 每一个节点都包括这些变量&#xff0c;构造器复杂将传入的…