NuGet 构建服务器与常用命令
公司出于某些原因需要自己在内部网络搭建一个私有的 Nuget 服务器,而且要运行在 Linux服务器上面。如果说 Windows 下搭建的话很简单,直接在项目当中引入 Nuget 的库就 OK,这儿的话 .Net Core 还没有相应的教程。
不过在万能的 Docker 上面找到了一个 Simple-Nuget-Server 镜像,具体使用方式在 这里。安装方法请参考之前的 博文,安装好 Docker 按着流程走就行了。
这里记录一下发布到 Nuget 服务器的常用命令与使用方法,首先你需要得到 Nuget 官网下载 Nuget.exe 程序,地址在这儿。
那么我们新建一个库项目,这里我仅以 .NetCore 程序为例,有两种方式可以生成
.nupkg 文件:
- 在项目的 .csproject 目录下打开 Shell 工具或者命令行,然后执行 dotnet pack 命令。
- 在项目属性右键,在 Package 这一栏当中勾选上 generate nuget package,并且在里面可以
控制包版本等其他信息。
当我们的 nupkg 文件生成成功之后就可以通过 Nuget.exe 的 push 命令来发布包文件了。
其命令如下:
nuget push -Source <你的 NUGET 服务器地址> -ApiKey <安装时候填写的密钥> <包文件路径>
例如:
nuget push -Source http://nuget.org -ApiKey 123456 TestLibPackage.nupkg
在填写的时候不要把尖括号的填进去了......
如果你需要发布多个版本的话,改一下版本号,再执行这个命令即可。
再介绍一个命令,如果我们需要删除已经发布的包只需要执行下列命令即可:
nuget delete <包 ID> <包版本> -Source <你的 NUGET 服务器地址> -ApiKey <你的密钥>
例如:
nuget delete TestLibPackage 1.0.0 -Source http://nuget.org -ApiKey 123456
其他的命令可以参考 Microsoft 的官方文档:
https://docs.microsoft.com/en-us/nuget/tools/nuget-exe-cli-reference
这里还有一个坑,你在添加自己的 Nuget 源的时候记得直接填写服务器地址就可以了,后面的 Path 就不用加了。