10分钟学会VS NuGet包私有化部署

简介: 10分钟学会VS NuGet包私有化部署

前言

我们之前实现了打包发布NuGet,但是发布后的引用是公有的,谁都可以访问,显然这种方式是不可取的。

命令版本:10分钟学会Visual Studio将自己创建的类库打包到NuGet进行引用(net,net core,C#)

web版本(推荐):小白2分钟学会Visual Studio将引用包打包到NuGet上

其实官方也提供了私有化部署(NuGet.Server、ProGet、MyGe等),我们就来基于BaGet进行搭建一个私有NuGet环境。


什么是BaGet

BaGet 是GitHub上开源的一个项目,是一个轻量级NuGet和符号服务器,是NuGet V3 服务器的开源实现。

搭建私有化BaGet服务器

我们以自己的本地环境充当服务器环境为例

进入BaGet下载地址下载release包,下面是我下载的版本,你也可以选择其他版本:

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

如下讲解怎么选择版本下载,点击进入BaGet下载地址,点击Releases选择版本,进入后点击BaGet.zip进行下载。

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

 

 

将下载后的BaGet.zip文件解压,修改appsetting.json 配置文件,不需要修改什么,只需要修改自己的api keys和服务器地址即可。由于这里是测试,api keys就不填了,不影响操作。。

里面的具体配置操作可参考官方文档

 

注意启动服务的前提是要安装.NetCore SDK,由于安装了.NET Core,所以自带的有,如果没有的需要安装sdk。

BaGet.zip文件解压目录(BaGet文件目录)下打开命令行,执行:dotnet BaGet.dll

执行:dotnet BaGet.dll

 

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


上传程序包到私有化服务器

创建一个类库用于测试,我们还是以之前的“繁简体相互换换”为例。

using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;
using System;
namespace XiongZeUtils
{
    public static class xzUtils
    {
        /// <summary> 
        /// 简体转换为繁体
        /// </summary> 
        /// <param name="str">简体字</param> 
        /// <returns>繁体字</returns> 
        public static string GetTraditional(string str)
        {
            string r = string.Empty;
            r = ChineseConverter.Convert(str, ChineseConversionDirection.SimplifiedToTraditional);
            return r;
        }
        /// <summary> 
        /// 繁体转换为简体
        /// </summary> 
        /// <param name="str">繁体字</param> 
        /// <returns>简体字</returns> 
        public static string GetSimplified(string str)
        {
            string r = string.Empty;
            r = ChineseConverter.Convert(str, ChineseConversionDirection.TraditionalToSimplified);
            return r;
        }
    }

右键项目,选择打包:

 

打包完成会得到一个nupkg文件,版本在右键-》属性-》打包里面进行配置:

 

在刚刚的浏览器看一下看一下Upload命令:

 

在上面打包目录下打开命令行执行:

dotnet nuget push -s http://localhost:5000/v3/index.json XiongZeUtils.1.0.3.nupkg

注意,这里是打包路径,也就是生成XiongZeUtils.1.0.3.nupkg文件的目录,和上面解压目录执行dotnet BaGet.dll的是两个地方,不要混淆。

 

推送包成功后,我们再去http://localhost:5000/的Packages查看一下,私有化打包发布成功。


使用私有化程序包

在vs2019中打开:工具-选项-NuGet包管理器-程序包源。添加一个源,输入名称,源:http://localhost:5000/v3/index.json(自己的服务器地址)

 

在NuGet里面就能查询到私有服务器上的程序包了

 

相关文章
|
4天前
|
弹性计算 开发框架 安全
基于云效 Windows 构建环境和 Nuget 制品仓库进行 .Net 应用开发
本文将基于云效 Flow 流水线 Windows 构建环境和云效 Packages Nuget 制品仓库手把手教你如何开发并部署一个 .NET 应用,从环境搭建到实战应用发布的详细教程,帮助你掌握 .NET 开发的核心技能。
|
2月前
|
IDE 开发工具 C++
AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决
本文详细介绍了在离线环境中开发Avalonia UI项目的完整解决方案,包括Visual Studio 2022和JetBrains Rider的离线安装、Avalonia UI模板的配置、私有NuGet服务的部署与使用,以及NuGet包的制作和上传。通过这些步骤,您可以在网络受限或完全离线的环境中顺利进行Avalonia UI项目的开发。
AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决
|
Linux 网络安全 开发工具
通过nexus3部署公司内部的私有npm仓库:从安装到配置、从发布包到测试包的一条龙服务
登录时使用默认用户admin,密码不知道就需要找默认的,点击Sign in时会提示你路径,这里我是这样查的,在linux服务器上输入以下命令
2506 0
|
运维 供应链 前端开发
化繁为简,如何快速实现企业级私有 npm 包依赖管理服务?
化繁为简,如何快速实现企业级私有 npm 包依赖管理服务?
142 0
|
开发框架 .NET C++
『BaGet』带你一分钟搭建自己的私有NuGet服务器
📣读完这篇文章里你能收获到 - 使用BaGet快速搭建Nuget私仓 - 博主带你实操,全程无坑 - 感谢点赞+收藏,避免下次找不到~
575 0
『BaGet』带你一分钟搭建自己的私有NuGet服务器
|
JSON 网络安全 开发工具
使用 CocoaPods 对公有库开源和私有库组件(下)
使用 CocoaPods 对公有库开源和私有库组件(下)
278 0
使用 CocoaPods 对公有库开源和私有库组件(下)
|
开发工具 git iOS开发
使用 CocoaPods 对公有库开源和私有库组件(上)
使用 CocoaPods 对公有库开源和私有库组件(上)
320 0
使用 CocoaPods 对公有库开源和私有库组件(上)
|
PHP 开发工具 git
从零创建发布属于自己的composer包
一、准备工作 注册并登录github账户,github.com 安装好git软件: 注册登录packagist账户:packagist.org/
|
安全 网络安全 数据安全/隐私保护
nodejitsu推出私有npm仓库托管服务
基于如下理由,企业需要私有的npm仓库。 确保npm服务快速、稳定:对于企业来说,上线生产系统的时候,需要花半小时甚至更久等待npm模块依赖安装完毕,是不可接受的。部署镜像后,可以确保高速、稳定的npm服务。
242 0
nodejitsu推出私有npm仓库托管服务
|
Web App开发 Java Maven
Java项目如何添加第三方 jar 包引用
版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢。 https://blog.csdn.net/testcs_dn/article/details/81354302 ...
3392 0