10分鐘學會VS NuGet包私有化部署

學習中的苦與樂發表於2021-09-13

前言

我們之前實現了打包釋出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裡面就能查詢到私有伺服器上的程式包了

 

 
歡迎關注訂閱微信公眾號【熊澤有話說】,更多好玩易學知識等你來取
作者:熊澤-學習中的苦與樂
公眾號:熊澤有話說
出處:  https://www.cnblogs.com/xiongze520/p/15242877.html
創作不易,任何人或團體、機構全部轉載或者部分轉載、摘錄,請在文章明顯位置註明作者和原文連結。  

 

 

 

相關文章