大致流程:
1. 通过VS创建一个Web空项目,然后通过Nuget引入Nuget.Server(目前最新版3.2.1)。
2. 直接将这个Web项目发布到IIS。
3. 通过nuget.exe打包*.nupkg文件,然后拷贝到IIS对应目录。
4. 在VS的Nuget包管理器中加入私服的地址。
5. 最后就可以像使用nuget.org的包一样引入自己的包了。

搭建Nuget私服

首先通过VS创建一个web空项目,.net版本选择4.6

引入Nuget.Server

然后就是等待安装过程:

安装完成后:

最后把这个web项目发布到IIS上面,示例地址:http://127.0.0.1:8003,发布后的首页如下:

发布项目到Nuget

发布到nuget上面需要后缀名为. nupkg的文件,nupkg是nuget的标识后缀,其实就是压缩文件,大家可以把后缀修改为zip就可以解压了。
首先我们需要下载nuget.exe,我们可以单击网页的首页链接下载,这里我们下载的版本是5.1.0

然后把下载下来的nuget.exe文件拷贝到C:\Windows\System32下

通过项目发布

首先我们肯定要有一个类库项目,然后找到该类库项目文件.csproj目录,在此处打开控制台应用程序,输入如下命令:nuget pack

如果是需要Release发布:nuget pack -Properties Configuration=Release

这个时候在该目录下就会创建一个.nupkg文件,这个文件就是我们所说的nuget文件。

该文件的版本号来源于AssemblyInfo.cs文件

通过该项目通过nuget所引用的其它包也会作为新生成这个包的依赖。

通过DLL发布

通过DLL的发布是也非常重要,有时候我们并没有项目源码,只有那个项目的DLL,为了通过nuget管理起来也需要发布到我们的私服,具体的操作步骤如下:
1. 任意地方创建一个目录Nuget
2. 在Nuget目录打开DOS命令窗体
3. 在DOS窗体输入命令:nuget spec

此时会在该目录创建文件Package.nuspec

4. 将需要打包的DLL文件拷贝到Nuget\lib目录
5. 修改文件Package.nuspec内容

6. 如上,dependencies表示依赖的包,files表示需要打包哪些文件,src表示来源文件,target表示目标目录。

7. 最后还是在Nuget目录执行命令:nuget pack Package.nuspec(Package.nuspec可以省略)
8. 至此,你会发现Nuget目录同样生成了一个nupkg文件。

将nupkg发布到IIS

已经生成的nupkg怎么发布呢,很简单,直接把这个文件拷贝到我们私服的Packages目录下,私服就会自动解压了。

引用Nuget私服

前面一系列的操作都是为了使用,那么如何使用了,如上所说,我们默认发布的IIS地址是:http://127.0.0.1:8003。
然后我们打开Visual Studio,找到菜单工具—选项—Nuget包管理器—程序包源

配置成功之后,我们就可以使用了,如下:

关于版本号的引用

总结:
1. 常用命令:nuget pack/nuget spec
2. 如果打包项目提示未找到文件,请先生成项目文件
3.默认DLL文件打包到lib文件夹下面,其它配置文件打包到content文件夹下面

4.IIS的web.config里面的appSettings节点下面有几个配置非常重要

requireApiKey:是否验证密钥

apiKey:密钥的值

allowOverrideExistingPackageOnPush:是否允许覆盖具有相同Id的版本。

5.除了直接把nupkg文件拷贝到服务器之外,还可以通过nuget.exe的命令推送,推送命令是: nuget push Gd.RedisCache.1.0.0.nupkg -Source http://192.168.103.112/Nuget/nuget -ApiKey 123456

6.通过项目生成Nuget包的命令:nuget pack -Properties Configuration=Release

本文参考地址:https://www.cnblogs.com/h82258652/p/4898983.html

一步一步搭建Nuget私服的更多相关文章

  1. 使用nexus来搭建Nuget私服

    近期在搭建nuget私服.选择nexus这个产品.nexus支持npm,.nuget等,功能比较强大. 前言 博主使用centos7.5来搭建nexus,遇到了不少的问题.最后还是搞定了. 1:下载n ...

  2. 搭建Nuget服务器(Nuget私服)

    一.前言 对公司或者对个人来说,经过一段时间的沉淀之后,都会有一些框架或者模块,为了对这些框架或者模块进行更好的管理和维护,也为了方便后面的开发或者其他同事,我们可以在我们本地或者内网搭建一个Nuge ...

  3. 一步一步使用ABP框架搭建正式项目系列教程之本地化详解

    返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 本篇目录 扯扯本地化 ABP中的本地化 小结 扯扯本地化 本节来说说本地化,也有叫国际化.全球化的,不管怎么个叫法,反正道理都是一 ...

  4. #使用abp框架与vue一步一步写我是月老的小工具(2) 后台搭建初体验

    #使用abp框架与vue一步一步写我是月老的小工具(2) 后台搭建初体验 一.续上前言 关于这个小玩意的产品思考,假设我暂时把他叫我是月老热心人 这是一个没有中心的关系链,每个人进入以后都是以自己为中 ...

  5. 一步一步了解Cocos2dx 3.0 正式版本开发环境搭建(Win32/Android)

    cocos2d-x 3.0发布有一段时间了,作为一个初学者,我一直觉得cocos2d-x很坑.每个比较大的版本变动,都会有不一样的项目创建方式,每次的跨度都挺大…… 但是凭心而论,3.0RC版本开始 ...

  6. 一步一步教你编写与搭建自动化测试框架——python篇

    [本文出自天外归云的博客园] 这两天用python写了一个自动化测试框架,取名为Auty.准备用来做Web方面的接口测试,以下为Auty框架一步一步的搭建过程——

  7. 一步一步搭建Jenkins环境

    Jenkins使用经验谈1(一步一步搭建Jenkins环境)在公司使用 Jenkins 软件已经有一段时间了,走了很多弯路,但也积累了一些经验,可以和大家分享一下.我们来一起搭建Jenkins环境.首 ...

  8. 一步一步搭建客服系统 (2) 如何搭建SimpleWebRTC信令服务器

    上次介绍了<3分钟实现网页版多人文本.视频聊天室 (含完整源码)>使用的是default 信令服务器,只是为了方便快速开始而已.SimapleWebRTC官方文档里第一条就讲到,不要在生产 ...

  9. [ALM]一步一步搭建MS ALM环境 - 安装TFS + SQL SERVER

    描述: 安装SQL SERVER 2012,安装TFS 2013,配置TFS,挽起袖子,准备干活儿 步骤: 1,打开Hyper-V Manager,参考[Hyper-V]使用操作系统模板创建新的虚拟机 ...

随机推荐

  1. FreeRTOS编程风格

    数据类型 基本使用的是标准C里面的数据类型,但是针对不同的处理器,对标准C的数据类型又进行了重定义: 在FreeRTOS中详细的数据类型重定义在portmacro.h这个文件中,具体如下: /* Ty ...

  2. IntelliJ IDEA详细配置和使用教程(适用于Java开发人员)

    关闭Intellij IDEA自动更新在File->Settings->Appearance & Behavior->System Settings->Updates下 ...

  3. Vue下的index.html

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  4. WCF Endpoint分类

    WCF中可以为一个Service配置多个Endpoint 这些Endpoint的分类方法有下面3中 1.全局就一个endpoint,一个接口公开所有的方法,这适合简单的业务场景 2.将endpoint ...

  5. gorm 更新数据时,0值会被忽略

    原文: https://www.tizi365.com/archives/22.html ------------------------------------------------------- ...

  6. 大数据之路week02--day03 Map集合、Collections工具类的用法

    1.Map(掌握) (1)将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. (2)Map和Collection的区别? A: Map 存储的是键值对形式的元素,键唯一,值可以 ...

  7. idea 包.路径切换为目录结构

    取消勾选

  8. 2019HDU多校第三场F Fansblog——威尔逊定理&&素数密度

    题意 给定一个整数 $P$($10^9 \leq p\leq 1^{14}$),设其前一个质数为 $Q$,求 $Q!  \ \% P$. 分析 暴力...说不定好的板子能过. 根据威尔逊定理,如果 $ ...

  9. [Javascript] Create an Image with JavaScript Using Fetch and URL.createObjectURL

    Most developers are familiar with using img tags and assigning the src inside of HTML. It is also po ...

  10. MySQL sql join 算发

    在MySQL中,可以使用批量密钥访问(BKA)连接算法,该算法使用对连接表的索引访问和连接缓冲区. BKA算法支持:内连接,外连接和半连接操作,包括嵌套外连接. BKA的优点:更加高效的表扫描提高了连 ...