- 取得連結
- X
- 以電子郵件傳送
- 其他應用程式
先前的文章中有介紹使用 IIS 架設私有的 Nuget 伺服器,若要使用非 Windows 作業系統是不是一樣也可以架設呢?在微軟文件中有介紹很多可以建立 Nuget 伺服器的方法,本篇文章介紹使用 tomzo/liget 的 Docker image 建立以 Linux
微軟官方文件可參考文章下面的參考資料:Overview of Hosting Your Own NuGet Feeds | Microsoft Docs
文章環境
Docker Host 建置在 Ubuntu 的 Docker CE
使用 Docker 建立 LiGet 的 Nuget Server
使用 docker pull 取得 tomzo/liget 的 Docker 映像檔
docker pull tomzo/liget
使用 docker run 執行 tomzo/liget
LiGet 預設的連接埠為 9011
docker run -d \
-p 9011:9011 \
--name nuget-server \
tomzo/liget
建立成功後使用瀏覽器連線到 http://{LiGet}:9011 可以看到 LiGet 的頁面
http://{LiGet}:9011/api/v3/index.json 為之後設定 Nuget 來源時要設定的網址
接下來上傳一個套件到 LiGet
將套件上傳到 LiGet 伺服器
使用 dotnet nuget push 指令將 Newtonsoft.Json 套件發佈到 LiGet 上
dotnet nuget push .\Newtonsoft.Json.12.0.1.nupkg
--source http://{LiGet}:9011/api/v3/index.json
--api-key NUGET-SERVER-API-KEY
預設的 API KEY 為 NUGET-SERVER-API-KEY
若想要變更 Nuget Server 的 API KEY,請參考 LiGet 的使用說明
https://github.com/ai-traders/liget#usage
發布成功後重新連到 LiGet 就可以看到剛剛上傳的 Newtonsoft.Json 套件
注意事項
目前 LiGet 資料庫是使用 sqlite ,在 Visual Studio 中設定 LiGet 伺服器考參考下列文章:「上傳既有的 Nuget 套件到自行架設的 Nuget Server」章節「設定 Visual Studio 套件管理員」
將來源位址改成 http://{LiGet}:9011/api/v3/index.json 即可
在文件中也有提到使用 .NET Core 開發的第三方 Nuget Server,請自行參考
留言
張貼留言