Jenkins工作流程
程序员提交代码到Git/SVN仓库,触发钩子程序向 JenKins 进行通知,Jenkins 调用Git/SVN插件获取源码,调用Maven打包为war包,调用Deploy to web container插件部署到Tomcat服务器。
独立还是Servlet
Jenkins可以使用自己的内置Web服务器(Jetty)在自己的进程中独立运行。它也可以作为现有框架中的一个servlet运行,如Tomcat或Glassfish应用程序服务器。本节专门针对独立的安装和执行。
Windows安装
其它方式百度。
在下载目录中打开终端并运行 java -jar jenkins.war --httpPort=8080
浏览http://localhost:8080并按照说明完成安装。
登录
默认用户名admin,密码位于.jenkins/secrets下的 initialAdminPassword文件
全局安全配置
允许用户注册
任何用户都可以做任何事
全局工具配置
Maven的设置配置成本地路径(强烈建议把setting文件拷贝到workspace文件夹下,输入../settings.xml)
添加JDK,取消自动安装
配置MAVEN_HOME
插件安装
Ctrl + F 搜索 Deploy to container ,勾选安装。
安装成功
安装GitLab插件
上传项目代码到GitLab
参考链接
创建任务
Git源配置
注意该URL目录下有pom.xml文件,也就是位于根目录。
点击Add之后,注意下方填入GitLab用户名和密码
一定别忘了选择自己生成的证书!
构建触发器
远程触发器的作用,当你访问这个URL网址时,会自动构建项目。
例如;
构建
这里你使用 Execute shell 形式 即 shell 脚本语言进行构建操作。
不过我们是Java项目,使用的是Mavne构建,所以选择最后的调用顶层 Maven 目标。
立即构建
点开工作区,出现target文件夹
Jenkins 使用天气图标代表执行结果
构建后操作
发布到Tomcat
必须要有Deploy to container 插件
点击之后,设置构建后的war包相对路径,context path 是访问的域名xxx.cn/demo
最后是Tomcat的路径。
保存,回来再次构建。回到Tomcat所在的服务器,访问 http://127.0.0.1:8888/demo/ 即可。
触发钩子程序
我们试着修改index.jsp,然后提交到Gitlab。
还记得前面配置的触发器吗?
当我访问了触发器URL后,Jenkins 工作区就开始构建。
我参考的文章
windows 安装 jenkins 自动化构建部署至linux服务器上
一.环境准备 1.git安装环境 参考链接 https://www.cnblogs.com/yuarvin/p/12500038.html 2.maven安装环境,包括jdk环境安装 参考链接 htt ...
dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器
# dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...
Jenkins自动化构建系列:01敏捷开发、自动化构建与持续集成
已写完,今天新开一个,上周听了Bob Jiang老师的Agile1001公开课,一直想写个总结,这篇关 ...
使用Docker+Jenkins自动构建部署
环境 Windows 10 Docker Version 18.06.1-ce-win73 (19507) 运行jenkins 运行jenkins 容器 docker run -d --name ln ...
Jenkins自动化构建python nose测试
[本文出自天外归云的博客园] 简介 通过Jenkins自动化构建python nose测试分两步: 1. 创建节点(节点就是执行自动化测试的机器): 2. 创建任务并绑定节点(用指定的机器来跑我们创建 ...
Gitlab+Jenkins用钩子实现git提交后jenkins自动化构建
Gitlab+Jenkins用钩子实现git提交后jenkins自动化构建 一.Jenkins 进入项目---->Configure 1.设置项目代码从git中拉取 2.设置钩子程序 二.git ...
Jenkins自动化构建配置
写在前头 我每次修改代码一点东西,都要进行一个重新发布.重新发布的流程大概如下: 将最新代码同步上传到git上面 Maven打包 mvn clean install 将最新的jar包上传到服务器上面, ...
使用jenkins自动化构建android和ios应用
背景 随着业务需求的演进,工程的复杂度会逐渐增加,自动化的践行日益强烈.事实上,工程的自动化一直是我们努力的目标,能有效提高我们的生产效率,最大化减少人为出错的概率,实现一些复杂的业务需求应变.场景如 ...
用Docker运行Jenkins自动化构建.NET Core项目
目标 当代码提交到GitHub后,自动生成构建项目并部署到服务器.接下来介绍一下如何在容器中运行Jenkins,并自动化构建GitHub上的项目,使用自动化构建来解放你的双手. 前置条件 一台已经安装 ...
随机推荐
μC/OS-Ⅲ系统的时间管理函数和定时器
一.时间管理函数 μC/OS-Ⅲ系统提供一些列时间管理服务函数: 1.OSTimeDly():任务延时n个时钟节拍. 2.OSTimeDlyHMSM():任务延时指定的时间,采用“时:分:秒:毫秒”方 ...
“耐撕”团队 2016.04.11 站立会议
1. 时间 : 19:30--19:50. 共计20分钟. 2. 成员 : Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客: ...
【CSS3】---only-child选择器+only-of-type选择器
only-child选择器 “:only-child”选择器选择的是父元素中只有一个子元素,而且只有唯一的一个子元素.也就是说,匹配的元素的父元素中仅有一个子元素,而且是一个唯一的子元素. 示例演示 ...
Java 单文件下载及重命名
代码(仅供参考): /* * 另存为 */ @RequestMapping("/saveAs.do") public @ResponseBody void saveAs(Strin ...
Centos7系统配置上的变化(一)
原文 Centos7系统配置上的变化(一) 安装后,一开始有点儿无力吐槽的感觉,变化这么大? 一.Runlevel 首先一条,原来一直用的CentOS-6.5-x86_64-minimal.iso光盘 ...
JS模式---发布、订阅模式
发布订阅模式又叫观察者模式,它定义一种一对多的依赖关系, 当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知. document.body.addEventListener('click', ...
api接口token验证
接口特点汇总: 1.因为是非开放性的,所以所有的接口都是封闭的,只对公司内部的产品有效: 2.因为是非开放性的,所以OAuth那套协议是行不通的,因为没有中间用户的授权过程: 3.有点接口需要用户登录 ...
刷seed有感
今天又把seed刷了一遍 昨天去了基佬他们公司.第一次去他们公司.米虫科技,在重庆算是一家中型公司吧. 他去公司加班写一个游戏的封面,第一次感觉ui的不给设计图真的很坑.一个页面所有东西 自己凭感觉写 ...
046、创建Docker Machine(2019-03-11 周一)
参考https://www.cnblogs.com/CloudMan6/p/7237420.html 对于Docker Machine来说,属于 Machine 就是运行docker daemon ...
WCF开山篇__图片传输
WCF开山篇__图片传输 一. 简介 Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序接口,可以翻译为Windows通讯接口,它是. ...