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裡面就能查詢到私有服務器上的程序包瞭

到此這篇關於10分鐘學會VS NuGet包私有化部署的文章就介紹到這瞭,更多相關VS NuGet包私有化部署內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: