windows安装proget实现nuget私有包部署
下载proget
官网
下载地址
免费下载
安装proget
下载完成之后双击安装
选择ProGet
默认选择即可
也可以指定数据库,SQL Server数据库
Server=服务器名;Database=数据库名;User Id=用户名;Password=密码
Server=localhost;Database=ProGet2;User Id=sa;Password=xxxxxx
如果使用iis需要安装hosting
修改项目的应用程序池
耐心等待安装完成
安装完成
查看运行状态
访问http://localhost:8624/
Proget配置
点击获取一个许可密钥
申请完之后就成功了
邮箱将会收到免费的注册码
选择创建第一个feed
新建一个.netstandard2.0的类型,创建一个方法
using System;namespace ClassLibrary1
{public class Class1{public int Add(int a, int b){return a + b;}}
}
编辑项目文件
<Project Sdk="Microsoft.NET.Sdk"><PropertyGroup><TargetFramework>netstandard2.0</TargetFramework><PackageId>Common.Express</PackageId><Version>1.1.2</Version><Authors>作者</Authors><Company>公司</Company><Product>物流</Product><Title></Title><Description>简单介绍一下这个包。这是一个对接了各个物流模块封装一个物流模块包。</Description><PackageTags>物流模块;物流;顺丰;申通;圆通</PackageTags></PropertyGroup>
</Project>
找到包所在位置,执行dotnet pack
打包
dotnet pack详细命令
查看打包好的nuget包,打开proget,选择上传包
选择从硬盘上传
点击确定,就会多了一个包
使用
复制apiurl
打开vs选项,添加程序包源
选择一个项目,管理nuget包
安装完成之后测试使用
上传引用其他包的包
类库安装newtonsoft.json
然后添加序列化方法
using Newtonsoft.Json;
using System;namespace ClassLibrary1
{public class Class1{public int Add(int a, int b){return a + b;}public string ObjectSerize(object obj){return JsonConvert.SerializeObject(obj);}}
}
打包发布,点击更新就会显示依赖项
增加https
如果不增加https可以使用,但是会报警告不太好,所以修改为iis配置,然后给iis配置https
选择服务器证书
选择创建自签名证书
创建完成之后选择Proget网站,右键编辑绑定
添加网站绑定
实现了https的访问
nuget.exe上传
NuGet.exe push <package path> [API key] -Source http://localhost:8624/nuget/testrepository/
# 没有api key所以不写
但是出现了405错误
这是iis的问题导致的
修改web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration><location path="." inheritInChildApplications="false"><system.webServer><handlers><remove name="WebDAV" /><add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" /></handlers><aspNetCore processPath=".\ProGet.Service.exe"arguments="iis-hosted"stdoutLogEnabled="false"hostingModel="inprocess" /><security><requestFiltering allowDoubleEscaping="true"><requestLimits maxAllowedContentLength="4294967295" maxQueryString="1048576" maxUrl="1048576" /><fileExtensions allowUnlisted="true"><clear /></fileExtensions></requestFiltering></security><modules><remove name="WebDAVModule" /></modules></system.webServer></location>
</configuration>
重启iis
上传成功,然后查看