前言

随着微服务的兴起,原先一个庞大的项目,被切分一个个功能独立的微服务,虽然使得业务系统的扩展性和维护性得到提升,但是也加大了维护人员的工作量。有的系统由成百上千个微服务组成,如果每次有修改,都要手工去发布的话,那将是一件可怕的事。
jenkins 的到来,让运维人员看到了福音。

什么是Jenkins?

通俗的讲,jenkins就是用来简化,代码托管服务器到部署服务器的过程。举个例子,如果我有一个页面视图,显示 ASP.NET,现在接到需求要改成 Hello Word,你会怎么做?

步骤

以上的步骤还是比较理想化的,中途可能会遇到这几种情况

1.获取代码编译不通过,需要通知程序员
2.运维人员任务繁忙,没有测试项目是否正常运行

而这一些有了Jenkins之后,就十分方便了,运维人员只要第一次配置好,后面需要发布时,只需发送一个指令,或者手动构建,就可以完成代码的迁出编译部署的过程,并且可以方便看到编译日志,最终如果失败掉还可以发送邮件通知相关人员。

接下来我简单的介绍下windows下如何部署Jenkins!

安装Jenkins

前往 Jenkins官网 下载,这里选择的是windows版本,下载完成后,跟着向导模式一步步安装,这里就不阐述细节了。如果没有修改配置,默认的端口为8080,也就说,你打开浏览器输入 http://localhost:8080/ 就可以进入后台

安装Jenkins插件

打开Jenkins后台,点击 系统管理

找到插件管理

因为我们是部署.net项目,所以这里选择 MSBuild Plugin

配置MSBuild Plugin

点击 系统管理-全局工具设置 找到

注意,这里根据你项目的版本去选择 MSBuild,如果你的项目是.net framwork 4.5,那么就选择跟我一样的路径。

创建任务

1.点击系统左边的菜单,新建一个任务

2.输入项目名称后,选择自由风格的软件项目

3.输入项目的地址,因为我用的是github,所以直接在这里写入项目URL

4.展开 高级 的源码管理中

在这里面输入github相关用户信息,注意这里可以根据你代码托管软件来设置,这边也支持SVN
5.接下来,构建触发器,所谓的触发器就是指,你用什么方式触发编译部署。可以选择定时,也可以选择 发送指令,这里我选择发送指令 9527

6.构建前的操作,有时候,你需要在编译前,删除旧的代码,看具体需求而定

7.构建设置

这里设置相关的编译参数,我这边主要是指定了 MSBuild版本,和需要编译的 sln,你也可以指定项目编译,还有指定了 编译发布路径
8.增加构建步骤

因为我这边是做测试,所以都在同一台机子,我增加的步骤是直接用命令行拷贝到IIS项目所在文件夹,如果是远程机子,你可以使用FTP插件来上传
9.增加构建后步骤

比如你想要构建后,删除代码,等等。

10.保存

触发编译

因为我使用 发送指令来触发编译
所以我在浏览器中 输入 http://localhost:8080/me/my-views/view/all/job/JekinsTest/token=9527 就可以触发编译

查看编译日志

总结

整体上,我这里只完成了最简单的Jenkins部署,但是万变不离其宗,只要熟悉了它工作的原理,就可以根据具体的项目,做个性化的设置,理论上,它支持各种复杂的项目部署,所以你不用担心它能不能满足你的需求。

转自:https://www.cnblogs.com/seethrough/p/9252804.html#jump_10

windows下使用jenkins持续集成.net项目的更多相关文章

  1. Windows系统的Jenkins持续集成环境

    Windows系统的Jenkins持续集成环境 如题:本文将介绍如何在Windows环境下运用Jenkins部署持续集成环境.之所以写本文,是因为在最近工作当中,学习使用Jenkins时,确实遇到了一 ...

  2. windows系统下构建Jenkins持续集成

    环境准备 windows10+tomcat+python3.x(安装方法自行百度) 安装Jenkins 从https://jenkins.io/download/ 下载war包 将war包放到tomc ...

  3. 手把手教你利用Jenkins持续集成iOS项目

    前言 众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段.用户们都是很挑剔的.如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一 ...

  4. windows环境下简单Jenkins持续集成搭建

    Jenkins是基于Java开发的持续集成工具,所以在安装Jenkins之前我们要确定电脑上已经安装了Java JDK并且环境变量配置正确,否则在启动使用java -jar Jenkins.war启动 ...

  5. 一步步部署基于Windows系统的Jenkins持续集成环境

    如题:本文将介绍如何在Windows环境下运用Jenkins部署持续集成环境.之所以写本文,是因为在最近工作当中,学习使用Jenkins时,确实遇到了一些问题,而大多数教程文档都是基于Mac或是Lin ...

  6. 【转】手把手教你利用Jenkins持续集成iOS项目

    前言 众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段.用户们都是很挑剔的.如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一 ...

  7. centos下搭建Jenkins持续集成环境(安装jenkins)

    1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. 1 wget -O /etc/yum.repos.d/ ...

  8. centos下搭建Jenkins持续集成环境

    1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. 1 wget -O /etc/yum.repos.d/ ...

  9. 利用 Jenkins 持续集成 iOS 项目,搭建自动化打包环境

    ---恢复内容开始--- jenkins是一个广泛用于持续构建的可视化web工具,持续构建即各种项目的”自动化”编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:Java, c#, P ...

随机推荐

  1. 畅通工程续 -- HDU 1874 floyd

    题目大意: 现在,已知起点和终点,请你计算出要从起点到终点,最短需要行走多少距离. 思路: floyd算法模板题,这是一个牺牲空间换取时间的算法,本质是动态规划. AC代码: #include < ...

  2. Html开发中document.getElementByTagName无法找到所有DOM元素的问题解决方法

    let eleList = document.querySelectorAll('li') for (let i = 0; i < eleList.length; i++) { // 遍历操作 ...

  3. Linux yun命令使用报错:File "/usr/bin/yum", line 30 except KeyboardInterrupt, e:

    原文参考:https://www.cnblogs.com/caiji/p/7891923.html 使用yum更新perl源,报错 问题出现原因: yum包管理是使用python2.x写的,将pyth ...

  4. LeetCode 31 Next Permutation / 60 Permutation Sequence [Permutation]

    LeetCode 31 Next Permutation / 60 Permutation Sequence [Permutation] <c++> LeetCode 31 Next Pe ...

  5. 《SpringMVC从入门到放肆》十一、SpringMVC注解式开发处理器方法返回值

    上两篇我们对处理器方法的参数进行了分别讲解,今天来学习处理器方法的返回值. 一.返回ModelAndView 若处理器方法处理完后,需要跳转到其它资源,且又要在跳转资源之间传递数据,此时处理器方法返回 ...

  6. Linux神奇命令之---tar

    在生产中会常常用到压缩,解压缩,打包,解包等,这时候tar这个万能的小老弟就是是必不可少的了.linux中最流行的tar是麻雀虽小,五脏俱全,功能强大. tar命令可以为linux的文件和目录创建档案 ...

  7. String类,StringBuffer类转字符数组

    String不可变类型和StringBuffer可变类型 String类和StringBuffer类都是字符串表示类,区别在于String对象引用变量是不可变的,而StringBuffer类对象引用变 ...

  8. mongodb的几种运算符

    ①比较运算符: 等于:默认是等于判断,没有运算符 小于:$lt(less than) 小于等于:$lte(less than equal) 大于:$gt(greater than) 大于等于:$gte ...

  9. Unity进阶----Lua语言知识点(2018/11/08)

    国内开发: 敏捷开发: 集中精力加班堆出来第一个版本 基本没啥大的bug 国外开发: 1).需求分析: 2).讨论 3).分模块 4).框架 5).画UML图(类图class function)(e- ...

  10. 高德地图JS API获取经纬度,根据经纬度获取城市

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...