.net core 持续构建简易教程
环境需求:jenkins和.netcore
由于jenkins在真机上的部署比较麻烦,所以在这里我使用基于jenkins的Docker,只要任何一台运行docker的环境都可以进行以下的操作。
docker run --restart always --name jenkins -v $PWD/jenkins_home:/var/jenkins_home -d -p 8080:8080 -p 50000:50000 daocloud.io/chenug/jenkins-dotnet

可以到对应的目录查看文件

在windows上请注意授予docker文件访问的权限,如

打开浏览器,访问jenkins服务器,等待jenkins启动,并进入安装的界面。

进入安装界面,要求输入安装密匙,输入如下命令。获取密匙:
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

紧接着是漫长的等待,如果安装页面出现错误,请重启服务,浏览器访问http://127.0.0.1:8080/restar
如下图,安装默认的的插件即可


部分插件会安装失败(很大部分原因是网络),后面进入到后台下载插件手动安装。
由于我实在是等不及,就直接刷新页面,直接进入注册账号密码,进入jenkins主界面。

由于默认安装的git就已经满足本次构建的需求,这里不介绍其他的插件使用,直接进入持续构建的主题。
首先是新建一个项目:

然后如下配置:

首先是源码可以从git,也可以从svn,甚至是文件夹,只需安装对应的插件即可。
这里需要说明的是,自动构建的规则依赖于具体的规则,在这里是只要matser分支有变化就会执行,又由于是部署在局域网内,无法使用Github的webhook,所以定义SCM每分钟去检查matser分支下是否有更新。
说回流程:
1.还原包(git restore)
2再生成对应的项目文件(cd /project;dotnet build)
3.执行对应项目的单元测试和集成测试(这一步非必要,属于持续测试的范围,测试失败会退出本次构建)
4.发布对应项目文件(dotnet publish)
如果仅仅持续构建是不够的,想要持续部署的话,需要自己进行客制化的操作。我个人的用法是使用Docker,借助像daoclou和阿里云等第三方服务,将生成的部署文件push到私有git上,第三方会帮你把容器构建和发布。
如下图:

.net core 持续构建简易教程的更多相关文章
- Android开发简易教程
Android开发简易教程 Android 开发因为涉及到代码编辑.UI 布局.打包等工序,有一款好用的IDE非常重要.Google 最早提供了基于 Eclipse 的 ADT 作为开发工具,后来在2 ...
- Ocelot简易教程(二)之快速开始1
Ocelot简易教程目录 Ocelot简易教程(一)之Ocelot是什么 Ocelot简易教程(二)之快速开始1 Ocelot简易教程(二)之快速开始2 Ocelot简易教程(三)之主要特性及路由详解 ...
- Teamcity+SVN+VisualStudio在持续集成简明教程
Teamcity+SVN+VisualStudio持续集成 简明教程 一.写在最前: 1. 各组件版本号例如以下: Teamcity(简称tc)版本号:8.1.4 SVN版本号:Tortoi ...
- Ant 简易教程
转载:http://www.cnblogs.com/jingmoxukong/p/4433945.html Ant 简易教程 Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动 ...
- Intellj IDEA 简易教程
Intellj IDEA 简易教程 目录 JDK 安装测试 IDEA 安装测试 调试 单元测试 重构 Git Android 其他 参考资料 Java开发IDE(Integrated Developm ...
- Zabbix实战-简易教程系列
一.基础篇(安装和接入) Zabbix实战-简易教程--总流程 Zabbix实战-简易教程--整体架构图 Zabbix实战-简易教程--DB安装和表分区 Zabbix实战-简易教程--Server端 ...
- Flow简易教程——安装篇
.mydoc_h1{ margin: 0 0 1em; } .mydoc_h1_a{ color: #2c3e50; text-decoration: none; font-size: 2em; } ...
- 在ASP.NET Core中构建路由的5种方法
原文链接 :https://stormpath.com/blog/routing-in-asp-net-core 在ASP.NET Core中构建路由的5种方法 原文链接 :https://storm ...
- Ocelot简易教程(七)之配置文件数据库存储插件源码解析
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9852711.html 上篇文章给大家分享了如何集成我写的一个Ocelot扩展插件把Ocelot的配置存储 ...
随机推荐
- 关于AngularJS学习整理---浅谈$scope(作用域) 新手必备!
作为初次接触 AngularJS的新手,想要深层理解里面的内容短时间还是不可能的,所以标题写了浅谈字样,以下内容是参考各位大神以及相关书籍整理加个人理解,出现错误的地方请大家指正. $scope(作用 ...
- Array方法归类总结
数组的转换方法 valueOf()方法,数组调用该方法后返回的还是原来的数组. toString()方法,数组调用该方法后会调用每一项的toStirng()方法,之后将每一项拼接成一个以逗号分割的字符 ...
- getchar()不停止原因
应该是你的输入流中还有残留的字符,getchar()()会接受那个字符.你可以在调用getchar()()之前用fflush(stdin)刷新一下输入缓冲区. 上面一段里面,应该有读入语句吧,没读干净 ...
- STAR法则
现在相信大部分跳槽的朋友都已经将工作辞了,正在找工作的这个漩涡中,还没辞掉的可能也快了,找工作的这段时间是一个非常考验你的扛打击能力的时候.像网上投了几十家简历,只有几家邀请面试的,其他都是连面试阶段 ...
- python数据结构(一)------序列
数据结构是通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合:在Python中,最基本的数据结构是序列(sequence),序列中的每个元素被分配一个序列号--即元素的位置,也称为索引. p ...
- 【前端】:jQuery下
前言: 接上一篇博客: [前端]:jQuery上 一.jQuery属性操作 ① attr(设置或返回自定义属性值) input.select.textarea框中的内容, 可以通过attr来获取,但是 ...
- Entity Framework+SQLite+DataBaseFirst
Entity Framework+Sqlite+DataBaseFirst 本篇主要是说明在vs中配置Sqlite,及使用Entity Framework DataBaseFirst模式. 如果没有下 ...
- Dijkstra算法——单源最短路径问题
学习一个点到其余各个顶点的最短路径--单源最短路径 Dijkstra算法是由荷兰计算机科学家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法.是从一个顶点到其余各顶点的最短路径算法,解决的是有向 ...
- 1详细解析HTML基础结构
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 全文搜索 Contains 与like 的区别
全文搜索:是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式. ...