使用Jenkins部署.Net应用程序

首先从 https://jenkins.io/download/ 下载所需的版本

这里选择Windows版本来测试。

直接安装jenkins.msi,安装完后使用Win+R输入services.msc,可以看到有Jenkins的服务

使用浏览器打开地址:http://localhost:8080/ ,首次打开会提示到安装目录中一个txt文件中找密码,然后是安装默认推荐的插件,安装完后出现如下界面:

部署.net程序需要使用MSBuild 插件,在系统管理--插件管理--可选插件中找到MSBuild :

选择直接安装:

安装完成:

在系统管理--工具配置里面会出现MSBuild的设置:

设置MSBuild路径

MSBuild 的默认安装路径

32位 C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe
64位 C:\Program Files (x86)\MSBuild\14.0\Bin\amd64\MSBuild.exe

配置完后点击最下面的保存按钮。

下一步配置源代码管理,这里我们使用Git来测试

此时如果查看工具配置里面git是不可用的

https://git-scm.com/ 下载Windows 64位版本的git,安装到默认目录即可

https://sourceforge.net/projects/kdiff3/files/ 下载64位的 KDiff3,安装到默认目录

http://gitextensions.github.io/ 下载GitExtentions,安装的时候就不用选这两个了,因为上面已经安装了

回到刚才的设置那里

在创建任务前先到https://github.com/new 创建一个新的repository

创建完后复制这个地址:

打开GitExtensions,在工具--设置中设置邮箱和用户名

创建一个新的档案库

添加默认的过滤项

点击工具--PuTTY--生成或者导入Key,点击Generate,这个时候鼠标随便动,等进度条走完

复制公钥到GitHub的设置中

在 本地把公钥和私钥保存起来

回到主界面,选择档案库--管理远程档案库

加载密钥后点击测试连接,输入y即可

登录成功会看到用户名。

点击保存后会提示:

点击提交

在GitHub刷新页面

使用VS2015新建一个MVC项目

这里简单点,就不需要身份验证了

创建成功后就可以提交了

下面开始在Jenkins里创建任务

在源码管理设置自己的地址:

添加认证

保存后需要选择

选择后就没有错误了

接下来配置构建触发器,这里设置的是:

* * * * *

注意中间的空格,这里用的是cron 表达式,表示每分钟触发一次

接下来配置构建

因为我们的应用程序需要用到Nuget,所以先配置Nuget

可以到http://www.nuget.org/ 下载nuget.exe,这里我们把它放到D盘下

再增加一个构建步骤

这里的设置可以参考:

MSBuild1

MSBuild 命令行参考

保存后可以点击立即构建

成功后会显示蓝色标记

可以到Jenkins的安装目录看到自动下载的代码

可以在这里看到控制台输出

从控制台可以看到项目编译成功并发布到了一个临时目录:

打开目录可以看到文件

用iis新建一个网站指向这个目录,启动网站就能看到页面了

然后我们从源代码里更改下代码,比如改下首页的显示,然后提交,可以看到Jenkins自动开始创建了

构建成功

刷新页面

时间: 2024-10-10 04:29:32

使用Jenkins部署.Net应用程序的相关文章

使用Maven构建和部署J2EE应用程序的EAR文件

这篇文章,主要是技术上的整理,用来mark一下,用的时候参考. 一.新建项目 新建一个空的Maven Project项目 二.放入依赖 注:ear部署时如果里面有entity,会发生错误,所以不要把entity放到依赖项中,部署的时候先部实体,然后再部ear. 将需要打入EAR中的jar.war以dependencies-dependency的形式写到pom.xml文件中,如: 三.配置加载顺序 现在打出来的ear包中的application中只有war的配置信息,而没有jar的配置信息,而我们

Jenkins部署与备份恢复实战

一.关于Jenkins Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能!先了解下相关概念:CI: continuous integration持续集成 (code -- bulid -- integrate --test)CD: continuous Delivery 持续交付 ( test -- release)continuous Deployment 持续部署 简单来说就是通过Jenk

Jenkins部署Python项目实战

一.背景 我们工作中常用Jenkins部署Java代码,因其灵活的插件特性,例如jdk,maven,ant等使得java项目编译后上线部署一气呵成,同样对于脚本语言类型如Python上线部署,利用Jenkins强大的插件功能,轻松实现CI/CD,但如果部署多项目到同一台服务器涉及环境一致性问题,对此可以利用容器技术Docker解决,也可以利用Python虚拟环境例如virutalenv或conda等优秀等工具解决,在此由于后期根据requirements来安装依赖包比较慢,且后期需要将Pytho

ClickOnce部署疑难杂症:更新时部署与应用程序标识不一致问题。要安装此应用程序,请修改此文件的清单版本或卸载之前存在的应用程序。

使用ClickOnce部署winform应用程序.无论是安装或者自动更新都极为方便,但有时候一些疑难杂症也令人头疼 1.注意每次部署完成之后 setup.exe无需覆盖,只需要在Application.File中将最新的发布程序包拷进去,把*soft.application文件覆盖掉即可 2.部署与应用程序标识不一致问题,如下图的发布选项千万别乱动,否则客户会全部升级错误, 准备正式发布出去的时候这里一定要想清楚,千万别发布完了才想到改,那时候就晚了,这是血的教训啊! 3. 无法安装此应用程序,

Jboss AS 7 部署web应用程序时无法初始化spring的bean的解决办法

Jboss AS 7 在部署web应用程序的时候无法初始化spring的bean(在tomcat下边不会出现这个问题) 原因是web应用程序没有导入jboss对spring的支持的jar包 解决方法: 下载 snowdrop-vfs.jar(该文件在jboss-spring-subsystem-as7-nodeps-2.0.0.Final.zip包的module-deployer\org\jboss\snowdrop\main下,jboss-spring-subsystem-as7-nodeps

一种简单的生产环境部署Node.js程序方法

最近在部署Node.js程序时,写了段简单的脚本,发觉还挺简单的,忍不住想与大家分享. 配置文件 首先,本地测试环境和生产环境的数据库连接这些配置信息是不一样的,需要将其分开为两个文件存储 到config目录下,比如: 开发环境配置文件config/development.js: module.exports = { port: 3001, mysql: { user: 'root' } }; 生产环境配置文件config/production.js: module.exports = { po

如果在docker中部署tomcat,并且部署java应用程序

1.先说如何在docker中部署tomcat 第一步:root用户登录在系统根目录下创建文件夹tomcat7,命令如:mkdir tomcat7,并且切换到该目录下:cd tomcat7: 第二步:创建Dockerfile,命令如:touch Dockerfile: 第三步:编写Dockerfile,命令如:vim Dockerfile,完成以下命令编写: FROM ubuntu:14.04 MAINTAINER zhaichong <[email protected]> ENV REFRES

IIS部署MVC应用程序时遇到错误403.14

用IIS部署MVC应用程序时遇到错误403.14,并且同学说试遍了网上的所有方法都没用 然后我下午还很执著地试了网上很多种方法都失败了. 然后查看了基本设置 就一直以为是授权问题,继续在网上找方法,说要登录 然后就一直提示密码错误,但是明明密码是对的.继续找答案. 修改了web.xml 但是并没有什么用,查了很多资料,偶然间翻到一个教程说要添加映射步骤如下 功能视图-->IIS-->处理程序映射 添加脚本映射 但是报错 解决这个错误的方法是启用windows功能,Internet Inform

初识WCF之使用配置文件部署WCF应用程序

二月份的开头,小编依旧继续着项目开发之路,开始接触全新的知识,EF,WCF,MVC等,今天小编来简单的总结一下有关于WCF的基础知识,学习之前,小编自己给自己提了两个问题,WCF是什么?WCF能用来做什么?WCF具有哪些优点?带着这样的问题,小编开始进行了一番搜索,一下是小编整理的结果. WCF是什么? WCF(Windows Communication Foundation)是用于构建面向服务的应用程序的框架 ,是由微软发展的一组数据通信的应用程序开发接口.根据MSDN上的定义:WCF为.Ne