搭建公司内部的NuGet服务器

1.  创建NuGet项目

(注意:解决方案名称可以自定义为其他的名称)

2.   安装NuGet Server

在 “NuGetServer” 项目上,右键选择 “管理NuGet程序包” ,选择 “联机” ,右上角搜索框中输入“NuGet.Server”  Enter,在搜索结果中选择 NuGet.Server 项,进行安装即可(如下图所示)。

注意:如果安装最后,提示 替换 Web.config ,请选择“全是”。

3.  编译NuGet Server项目

编译“NuGetServer”项目,如果没有出异常,这里就创建项目完成,NuGetServer 就这么简单建成

注意: 如果一直编译不过的话,则尝试多更新几次Nuget.Server包(卸载重新安装)。

4. 配置文件说明(Web.config)

    web.config->appSettings的各项配置说明:

packagesPath:这个Key表示Nuget包的存放目录,默认情况下存放在部署的网站根目录Packages文件夹

requireApiKey: 这个key 如果设置成 true ,表示apiKey是必须要设置的,这个就像密码一样。可以阻止不知道这个apiKey人访问到程序包

apiKey: 是作为一个密钥,防止其他人来访问我们的Nuget服务(NuGet Package Explorer来访问的时候也许要填入我们预先设置好的密钥才能够进行访问)

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <!--  For more information on how to configure your ASP.NET application, please visit  http://go.microsoft.com/fwlink/?LinkId=169433  -->
 3 <configuration>
 4   <appSettings>
 5     <!-- Determines if an Api Key is required to push\delete packages from the server.  -->
 6     <add key="requireApiKey" value="true" />
 7
 8     <!--
 9     Set the value here to allow people to push/delete packages from the server.
10     NOTE: This is a shared key (password) for all users.
11     -->
12     <add key="apiKey" value="ChinaNet910111" />
13     <!--
14     Change the path to the packages folder. Default is ~/Packages.
15     This can be a virtual or physical path.
16     -->
17     <add key="packagesPath" value="~/Packages" />
18
19     <!--
20     Set allowOverrideExistingPackageOnPush to false to mimic NuGet.org‘s behaviour (do not allow overwriting packages with same id + version).
21     -->
22     <add key="allowOverrideExistingPackageOnPush" value="false" />
23
24     <!--
25     Set ignoreSymbolsPackages to true to filter out symbols packages. Since NuGet.Server does not come with a symbol server,
26     it makes sense to ignore this type of packages. When enabled, files named `.symbols.nupkg` or packages containing a `/src` folder will be ignored.
27
28     If you only push .symbols.nupkg packages, set this to false so that packages can be uploaded.
29     -->
30     <add key="ignoreSymbolsPackages" value="true" />
31
32     <!--
33     Set enableDelisting to true to enable delist instead of delete as a result of a "nuget delete" command.
34     - delete: package is deleted from the repository‘s local filesystem.
35     - delist:
36       - "nuget delete": the "hidden" file attribute of the corresponding nupkg on the repository local filesystem is turned on instead of deleting the file.
37       - "nuget list" skips delisted packages, i.e. those that have the hidden attribute set on their nupkg.
38       - "nuget install packageid -version version" command will succeed for both listed and delisted packages.
39         e.g. delisted packages can still be downloaded by clients that explicitly specify their version.
40     -->
41     <add key="enableDelisting" value="false" />
42
43     <!--
44     Set enableFrameworkFiltering to true to enable filtering packages by their supported frameworks during search.
45     -->
46     <add key="enableFrameworkFiltering" value="false" />
47
48     <!--
49     When running NuGet.Server in a NAT network, ASP.NET may embed the erver‘s internal IP address in the V2 feed.
50     Uncomment the following configuration entry to enable NAT support.
51     -->
52     <!-- <add key="aspnet:UseHostHeaderForRequestUrl" value="true" /> -->
53   </appSettings>
54   <system.web>
55     <httpRuntime maxRequestLength="31457280" />
56     <compilation debug="true" />
57   </system.web>
58   <system.serviceModel>
59     <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
60   </system.serviceModel>
61   <system.webServer>
62     <staticContent>
63       <mimeMap fileExtension=".nupkg" mimeType="application/zip" />
64     </staticContent>
65     <modules runAllManagedModulesForAllRequests="true">
66     </modules>
67   </system.webServer>
68 </configuration>

web.config

5. 部署IIS站点

假设我们部署站点的端口是10000,那么部署成功以后我们就可以通过 http://xxx.xxx.xxx.xxx:10000去访问我们的Nuget服务了(下面则是我们部署成功后的效果图)

时间: 2024-10-22 01:02:28

搭建公司内部的NuGet服务器的相关文章

使用NuGet.Server搭建公司内部的Nuget(包)管理器

使用NuGet.Server搭建公司内部的Nuget(包)管理器 前言 Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基于.NET Framework的应用时,Nuget能把在项目中添加.移除和更新引用的工作变得更加快捷方便.这是维基百科中的定义,实际上Nuget就是一个包管理器,类似于Java的Maven,可以帮助我们更方便的管理dll. 相信每个人都从官方的nuget服务器上下载过一些第三方组件.如:log4net.qu

NuGet学习笔记(3) 搭建属于自己的NuGet服务器

文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重要的一步,从零开始搭建属于自己的NuGet服务器,诚然园子里及其它很多地方已经有完全写好的NuGet服务源码,我们只需要拿来发布一下就ok了,运行也很正常,但作为一名合格的程序猿,不建议这种拿来主义尤其时你自己可以搞定的时候,用别人写好的东西总有些心里不踏实,当有一天它出问题了你的悲剧就开始了,下面

NuGet学习笔记3——搭建属于自己的NuGet服务器

文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重要的一步,从零开始搭建属于自己的NuGet服务器,诚然园子里及其它很多地方已经有完全写好的NuGet服务源码,我们只需要拿来发布一下就ok了,运行也很正常,但作为一名合格的程序猿,不建议这种拿来主义尤其时你自己可以搞定的时候,用别人写好的东西总有些心里不踏实,当有一天它出问题了你的悲剧就开始了,下面

NuGet学习笔记(3)——搭建属于自己的NuGet服务器[转]

来自:http://kb.cnblogs.com/page/143192/ 文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中 讲解了如何打包自己的类库,接下来进行最重要的一步,从零开始搭建属于自己的NuGet服务器,诚然园子里及其它很多地方已经有完全写好的NuGet服务 源码,我们只需要拿来发布一下就ok了,运行也很正常,但作为一名合格的程序猿,不建议这种拿来主义尤其时你自己可以搞定的

用ProGet搭建内部的NuGet服务器(更新安装步骤)

以下是转自dudu的文章,但是我发觉时间的问题,他的安装方法已经不适用了,所以这里我更新了安装方法: 最近团队内部用的一个很简陋的NuGet服务器出问题了,nuget push发包,客户端显示发布成功,服务器上就是没有.懶得再去排查这个问题,早就想换掉这个过于简陋的NuGet服务器,借此机会直接弃旧迎新吧. 在网上搜了搜,发现了ProGet,感觉不错,虽然是商业软件,但提供了免费版本,于是选用它重新搭建我们的NuGet服务器.下面分享一下搭建操作步骤. 1)下载地址:http://inedo.c

在内部架设NuGet服务器

在公司内部有很多基础框架或者基础组件,甚至对于使用SOA架构的公司来说,会有大量的业务组件的契约程序集,对于这些框架或组件的引用管理有的人使用源代码管理工具,但是NuGet相比源代码管理工具更方便: 1) 安装和卸载:不需要手动添加和移除引用,不需要手动改写配置文件甚至是一些初始化服务的代码.版本升级也只需要执行一条命令. 2) 打包:多文件打包,支持依赖管理等,使用的人没有繁琐的配置. 对于官方的包,可以在http://www.nuget.org/ 找到,自己也可以提交包上去.但是如果不希望把

在内部架设NuGet服务器(转)

在公司内部有很多基础框架或者基础组件,甚至对于使用SOA架构的公司来说,会有大量的业务组件的契约程序集,对于这些框架或组件的引用管理有的人使用源代码管理工具,但是NuGet相比源代码管理工具更方便: 1) 安装和卸载:不需要手动添加和移除引用,不需要手动改写配置文件甚至是一些初始化服务的代码.版本升级也只需要执行一条命令. 2) 打包:多文件打包,支持依赖管理等,使用的人没有繁琐的配置. 对于官方的包,可以在http://www.nuget.org/ 找到,自己也可以提交包上去.但是如果不希望把

动态IP利用花生壳搭建公司内部VPN

花生壳下载地址:http://yunpan.cn/c3UnqeWvVgPk2  访问密码 55ac 环境:win2k8 R2 Enterprises Windows版: 安装花生壳: 安装Windows Server的路由和远程访问服务 telnet yfshare8.imwork.net 1723 客户端成功拨入VPN后,VPN Server会推送一条与其同网段的路由给VPN客户端. 这里分配的是同网段 注:默认会在VPN的网卡上勾选  在远程网络上使用默认路由 打开VPN拨号属性--Netw

使用开源软件XWIKI搭建公司内部WIKI系统

一 应用背景描述 在平时的运维工作中,把常规工作进行文档整理非常重要,无论是平时工作处理或是工作交接,实时的维护文档资料可以提高工作效率.如果采用传统的TXT文档或者Word文档来记录的话修改不太方便,采用在线WIKI可以更好的让大家实时地查看或者修改文档资料. Wiki系统做得比较好的是Confluence,但是Confluence需要购买License才能使用,网上也有破解版本的.对比多个开源WIKI系统,我们选择XWIKI作为我们的WIKI系统,因为它提供的功能与Confluence的功能