WebEnh

.net7 mvc jquery bootstrap json 学习中 第一次学PHP,正在研究中。自学进行时... ... 我的博客 https://enhweb.github.io/ 不错的皮肤:darkgreentrip,iMetro_HD
随笔 - 1079, 文章 - 1, 评论 - 75, 阅读 - 174万
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

.NET Core:搭建私有Nuget服务器以及打包发布Nuget包

Posted on   WebEnh  阅读(759)  评论(0编辑  收藏  举报
  1. 使用docker搭建私有Nuget服务器
    复制代码
    复制代码
    docker run -d  -p 8080:80 -v $PWD/nuget/db:/var/www/db -v $PWD/nuget/packages:/var/www/packagefiles -e NUGET_API_KEY=ee28314c-f7fe-2550-bd77-e09eda3d0119  sunside/simple-nuget-server
    
    这里环境变量NUGET_API_KEY要记住后面的命令需要使用
    成功后如下图所示:

     

    复制代码
    复制代码
  2. 打包Nuget包
    复制代码
    复制代码
    语法:dotnet pack [--help] [--output] [--no-build] [--build-base-path] [--configuration] [--version-suffix] [project]
    需要注意的是如果已经存在的Nuget包,再发布是会提示错误的,如果不是正式版本的升级,则需要其他标识区分,如beta1,则执行的命令为dotnet pack --version-suffix beta1
    1.首先将目录转到对应项目目录
    2.执行(cmd powershell) dotnet pack 

    关于pack命令示例:

      dotnet pack

    打包当前项目。

      dotnet pack ~/projects/app1/project.json

    打包 app1 项目。

      dotnet pack --output nupkgs

    打包当前的应用程序,并将生成的包放置到指定的文件夹中。

      dotnet pack --no-build --output nupkgs

    打包当前的项目到指定的文件夹中,并跳过生成步骤

    复制代码
    复制代码
  3. 将Nuget包发布到私有服务器
    项目目录下执行:
    cd .\bin\Debug\
    (默认生成nuget文件的地址)
    nuget push -Source http://192.168.211.129:8080/ -ApiKey ee28314c-f7fe-2550-bd77-e09eda3d0119 ClassLibrary.1.0.0.nupkg
    (这里的ApiKey则是第一步的环境变量详细参数查看https://docs.microsoft.com/zh-cn/nuget/tools/cli-ref-push
  4. Nuget.exe环境变量设置(使得cmd /powershell 可以识别nuget命令)
    下载Nuget.exe (下载地址https://dist.nuget.org/win-x86-commandline/v4.7.0/nuget.exe
    将Nuget.exe 放置 C:\Program Files\dotnet目录下(一般安装了netcoreSDK 一定有这个目录)
  5. 引用私有服务器的Nuget包(配置程序包源引用时选择对应的程序包源)

     

     最后一点需要注意的地方新建类库的时候类库框架一定要选择你对应应用项目的框架(一般netcore项目创建的是netcore框架的类库,push命令是没有办法修改nuget包的框架的这点需要注意)

  6.  更多详细的nuget命令参考https://docs.microsoft.com/zh-cn/nuget/tools/nuget-exe-cli-reference 

编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2017-02-26 关于浏览器极速模式怎么设置
点击右上角即可分享
微信分享提示

喜欢请打赏

扫描二维码打赏

了解更多