手動搭建自己的nuget服務器及使用


這篇文章的主要目的:

1.搭建自己的私有的nuget服務器

2.打包代碼為nuget包

3.在其他項目中使用私有服務器上的nuget包

一. 搭建自己的nuget服務器

1. 創建一個空的ASP.NET Web 應用程序

2.使用nuget管理器,添加nuget.server包

安裝成功以后,目錄結構如下圖

3. 在項目上右鍵 生成網站 ,並運行

效果如下:

 

從圖中可以看出,錯誤原因:

web.config中有節點重復錯誤

4. 修改web.config中的錯誤節點:即刪除重復節點 compilation 

 

 刪除下面的compilation節點

5.重新編譯,生成網站,並運行

點擊here

如上所示,則nuget服務器搭建成功

然后,把項目發布到 本地 IIS 服務器上

附錄:

這里附上 IIS 的發布

(1). 右鍵項目,發布

(2). 選擇文件夾,及設置發布路徑

 

(3). 點擊上個步驟中的發布按鈕

如圖,發布成功

(4). 在IIS中添加網站

(5). 可以做如下配置,點擊確定

注意,點擊確定后,確保應用程序池中相應的應用是4.0版本

即,把2.0的修改為4.0

(6). 瀏覽 http://localhost:8090/ 

 

點擊,第一個here

如上,網站在IIS部署成功

二. 把代碼打包為nuget包

1.右鍵點擊解決方案,添加,新建項目

2. 如下圖,添加類庫

3. 右鍵ClassLibrary1類庫,點擊生成

4. 進入項目所在文件夾,並把nuget.exe復制到該文件夾下

注意:nuget.exe下載路徑,在這

如上圖,並在該目錄進入cmd命令

 5. 在該目錄下,操作cmd命令

 回車后,生成如下則表示成功

同時,該文件夾下,多出一個 .nupkg 文件

6.現在nuget包就已經打好了

但是,如果我們想在我們的私有nuget服務器上有這個包,我們還需要把.nuget文件傳到我們私有nuget服務器上;

如果有需要,可以自己在nuget私有服務器項目中添加一個上傳功能,這里選擇簡單方式。

即直接把打包生成的.nuget文件直接復制粘貼到 nuget服務器的 Packages 文件夾下,

這里的路徑為:G:\Dot_NET\wwwroot\nugetserverdemo\Packages

 

得到上圖,

綜上,ClassLibrary1的nuget包就已經在我們的nuget服務器上了。

訪問網站,點擊第一個here,可以得到,如下:

 

三. 在其他項目中,使用我們私有nuget服務器上的nuget包

 1. 右鍵解決方案,添加一個新的項目

選擇ASP.NET Web應用程序 ,項目名稱 NugetTest

選擇mvc

最后,點擊確認

2. 進入nuget包管理器,配置程序包源

 如下,把本地nuget私有服務器地址添加

3.選擇 private nuget.test 源,如下

 可以正常顯示nuget私有服務器上的ClassLibrary1的nuget包,故這里就算成功了。

四. 最后,這里再說下,自己的一些嘗試結果

1. 在搭建nuget私有服務器時,因為有nuget.server.core,所以,剛開始,有試過創建dotnet core 的版本,但是顯示的有部分不兼容。所以,直接就放棄了,沒有試驗。

2. 還有就是中間,在搭建nuget私有服務器時,有嘗試創建 以前老版本的ASP.NET 空網址,但是在引入nuget.server 3.x 版本以后,雖然,網站建立起來了,

 但是,點擊網站的第一個here時,並不能正常訪問,所以,也失敗。

3 . 還有就是剛開始,在IIS上部署的時候,部署會報500的錯誤,也浪費了一些時間,之后我嘗試建的asp.net core webapi項目發布到IIS后,也會報錯,

這里只說下解決的辦法,因為本機環境dotnet core 2.2 版本,之前裝的runtime版本是2.1.6 ,在發布到IIS以后,不知道什么原因有500的錯誤;之后下載最近的hosting 2.2.5版本,IIS終於可以正常了。

 

注意:如果你的IIS在部署dotnet core項目時,出現問題,可以嘗試下載最新的 runtime 試試 能否解決 ,這里給出 地址

 

git:https://github.com/Vincent-yuan/NugetServerDemo


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM