通过ProGet搭建一个内部的Nuget服务器
.NET Core项目完全使用Nuget 管理组件之间的依赖关系,Nuget已经成为.NET 生态系统中不可或缺的一个组件,从项目角度,将项目中各种组件的引用统统交给NuGet,添加组件/删除组件/以及更新组件即可一键完成,大大提升工作效率,减少不必要的引用报错。从运维角度,可在不影响老版本的情况下发布新版本,可统一管理公司各个项目中组件版本不一和各个版本组件的使用情况,减少故障发生以并使得项目稳定运行。
nuget.org 有个指南Hosting Packages Overview 告诉你如何自己搭一个nuget Server,社区还有下面的几个相关方案都可以实现自己搭建Nuget Server:
- Nexus: 支持NuGet, 他也是可以免费使用的,对于要同时支持Maven等的可以考虑,对于纯粹的.NET支持上有点重
- MyGet: 这是一个Nuget云服务,不适合企业内的私有部署
- Self-hosted feeds: 小团队使用可以,很快你就会掉到坑里,一个很简陋的NuGet服务器很难以满足各方面的需求
- ProGet,它和Nexus一样虽然是商业软件,支持nuget、npm、docker等,但它是.NET生态应用,而且还提供了免费版本,博客园也是用ProGet,具体参看dudu的文章《用ProGet搭建内部的NuGet服务器》。
下面我们就来看看如何使用ProGet搭建一个内部的NuGet服务器,由于时间的关系dudu的安装方法已经不适用了,实质上ProGet分为绿色版和安装包两个版本,绿色版就是dudu上面所说的,而简单点的是直接安装包安装,跟着向导做就可以了,下面介绍下绿色版的安装:
1、 浏览器打开http://inedo.com/proget/versions 并下载最新的4.3.1 Manual Install版
2、 解压下载文件,得到3个文件夹:ProGet-Service 、ProGet-WebApp与ProGet-DbChangeScripter
3、 参考http://inedo.com/support/documentation/proget/installation/manual ,我们使用IIS来承载,需要安装数据库和IIS 站点。
4、 在IIS中创建一个站点指向ProGet-WebApp文件夹,应用程序池配置为经典模式(Classic)。[注:如果采用集成模式(Integrated),会出现HTTP Error 403.14 - Forbidden错误]。
5、 在SQL Server中创建一个名为ProGet的数据库,然后运行ProGet-DbChangeScripter文件夹中的bmdbupdate.exe程序。出现命令行菜单,输入update(进行update操作),接着输入数据库连接字符串回车,默认true,继续回车(进行数据库初始化操作),然后会进行数据库初始化操作。
6、 在完成数据库初始化操作之后,修改一下web.config中的数据库连接字符串,然后就可以正常访问自己搭建的ProGet站点。
7、 去ProGet的官网 my.inedo.com 注册一个帐户并获取免费版的License Key,登录进入自己搭建的ProGet站点,点击“Licensing and Activation”,输入之前得到的License Key进行激活。激活后就可以正常使用ProGet
8、 进入 Manage Default Feed ,修改一下Disk Path的值,设置为存放packages文件的物理路径。
除了用于存放自己的nuget packages,ProGet还可以通过connector连接到远程的nuget.org服务器,这样可以把ProGet站点作为nuget.org的缓存服务器。
通过ProGet搭建一个内部的Nuget服务器的更多相关文章
- 搭建公司内部的NuGet服务器
1. 创建NuGet项目 (注意:解决方案名称可以自定义为其他的名称) 2. 安装NuGet Server 在 “NuGetServer” 项目上,右键选择 ...
- 在VS中自动生成NuGet包以及搭建自己的或单位内部的NuGet服务器
关于NuGet的介绍已经很多,可以参考下面的: NuGet学习笔记(1)--初识NuGet及快速安装使用 http://kb.cnblogs.com/page/143190/ NuGet学习笔记(2) ...
- .NET持续集成与自动化部署之路第二篇——使用NuGet.Server搭建公司内部的Nuget(包)管理器
使用NuGet.Server搭建公司内部的Nuget(包)管理器 前言 Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基 ...
- NuGet学习笔记(3)——搭建属于自己的NuGet服务器(转)
在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重要的一步,从零开始搭建属于自己的NuGet服务器,诚然园子里及其它很多地方已经有完全写好的Nu ...
- NuGet学习笔记3——搭建属于自己的NuGet服务器
文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重 ...
- NuGet学习笔记(3) 搭建属于自己的NuGet服务器
文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重 ...
- 快速搭建一个本地的FTP服务器
快速搭建一个本地的FTP服务器 如果需要开发FTP文件上传下载功能,那么需要在本机上搭建一个本地FTP服务器,方便调试. 第一步:配置IIS Web服务器 1.1 控制面板中找到"程序& ...
- 使用gitblit搭建一个简单的局域网服务器
使用gitblit搭建一个简单的局域网服务器 1.使用背景 现在很多使用github管理代码,但是github需要互联网的支持,而且私有的git库需要收费.有一些项目的代码不能外泄,所以,搭建一个局域 ...
- 搭建属于自己的NuGet服务器
文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重 ...
随机推荐
- ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”
DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...
- SSH实战 · 唯唯乐购项目(下)
后台模块 一:后台用户模块 引入后台管理页面 创建adminuser表: CREATE TABLE `adminuser` ( `uid` int(11) NOT NULL AUTO_INCREM ...
- 【微框架】之一:从零开始,轻松搞定SpringCloud微框架系列--开山篇(spring boot 小demo)
Spring顶级框架有众多,那么接下的篇幅,我将重点讲解SpringCloud微框架的实现 Spring 顶级项目,包含众多,我们重点学习一下,SpringCloud项目以及SpringBoot项目 ...
- python+uwsgi导致redis无法长链接引起性能下降问题记录
今天在部署python代码到预生产环境时,web站老是出现redis链接未初始化,无法连接到服务的提示,比对了一下开发环境与测试环境代码,完全一致,然后就是查看各种日志,排查了半天也没有查明是什么原因 ...
- 算法与数据结构(八) AOV网的关键路径
上篇博客我们介绍了AOV网的拓扑序列,请参考<数据结构(七) AOV网的拓扑排序(Swift面向对象版)>.拓扑序列中包括项目的每个结点,沿着拓扑序列将项目进行下去是肯定可以将项目完成的, ...
- Coroutine in Java - Quasar Fiber实现--转载
转自 https://segmentfault.com/a/1190000006079389?from=groupmessage&isappinstalled=0 简介 说到协程(Corout ...
- SSH框架和Redis的整合(2)
5. 添加功能的实现 新建一个Action:RClasAction,实现向Redis添加课程数据,并同步到MySQL. package com.school.action; import java.u ...
- 使用python自动生成docker nginx反向代理配置
由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...
- DDD领域驱动设计 - 设计文档模板
设计文档模板: 系统背景和定位 业务需求描述 系统用例图 关键业务流程图 领域语言整理,主要是整理领域中的各种术语的定义,名词解释 领域划分(分析出子域.核心域.支撑域) 每个子域的领域模型设计(实体 ...
- iOS开源项目周报1229
由OpenDigg 出品的iOS开源项目周报第三期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开发方面的开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. Ma ...