JenKins自动化构建部署流程参考
Jenkins工作流程
程序员提交代码到Git/SVN仓库,触发钩子程序向 JenKins 进行通知,Jenkins 调用Git/SVN插件获取源码,调用Maven打包为war包,调用Deploy to web container插件部署到Tomcat服务器。

独立还是Servlet
Jenkins可以使用自己的内置Web服务器(Jetty)在自己的进程中独立运行。它也可以作为现有框架中的一个servlet运行,如Tomcat或Glassfish应用程序服务器。本节专门针对独立的安装和执行。
Windows安装
下载 jenkins.war 包
其它方式百度。
在下载目录中打开终端并运行 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
参考链接
https://jingyan.baidu.com/article/9c69d48fe68cce13c9024e9c.html
创建任务

Git源配置
注意该URL目录下有pom.xml文件,也就是位于根目录。

点击Add之后,注意下方填入GitLab用户名和密码

一定别忘了选择自己生成的证书!

构建触发器
远程触发器的作用,当你访问这个URL网址时,会自动构建项目。
例如;
http://127.0.0.1:8080/job/Demo/build?token=123456789

构建
这里你使用 Execute shell 形式 即 shell 脚本语言进行构建操作。
不过我们是Java项目,使用的是Mavne构建,所以选择最后的调用顶层 Maven 目标。


立即构建

点开工作区,出现target文件夹

Jenkins 使用天气图标代表执行结果

构建后操作
发布到Tomcat
必须要有Deploy to container 插件

点击之后,设置构建后的war包相对路径,context path 是访问的域名xxx.cn/demo
然后是 Tomcat manager 的用户名和密码(配置参考:https://www.cnblogs.com/yueshutong/p/10184022.html)
最后是Tomcat的路径。

保存,回来再次构建。回到Tomcat所在的服务器,访问 http://127.0.0.1:8888/demo/ 即可。
触发钩子程序
我们试着修改index.jsp,然后提交到Gitlab。
还记得前面配置的触发器吗?
访问配置的触发网址 http://127.0.0.1:8080/job/Demo/build?token=123456789

当我访问了触发器URL后,Jenkins 工作区就开始构建。
然后,再次访问 http://127.0.0.1:8888/demo/ 网址,发现已经成功更新。

我参考的文章
https://blog.csdn.net/m1126m/article/details/78556359
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敏捷开发、自动化构建与持续集成
<SVN与TortoiseSVN实战系列>已写完,今天新开一个<Jenkins自动化构建系列>,上周听了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上的项目,使用自动化构建来解放你的双手. 前置条件 一台已经安装 ...
随机推荐
- java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;
<java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输 ...
- mysql之代码执行结构
本文内容: 什么是代码执行结构 顺序结构 分支结构 循环结构 首发日期:2018-04-18 什么是代码执行结构: 这里所说的代码执行结构就是多条sql语句的执行顺序. 代码执行结构主要用于触发器.存 ...
- zabbix监控自动发现监控tomcat(V1)
背景说明: 由于zabbix监控使用自带的模版,只能监控主机上只有1个tomcat的场景适合,虽然网上很多朋友都是在每个监控项上面添加一个空格来解决问题.但是个人感觉这种方法还是蛮麻烦的,所以写一篇使 ...
- java----构造回文字符串java(动态规划)【手写演算残图】
问题描述 草稿解决过程 (字丑别喷) 代码实现 import java.util.Scanner; /** * Created by Admin on 2017/3/26. */ public cla ...
- mssql sqlserver两条求和sql脚本相加的方法分享
转自:http://www.maomao365.com/?p=7205 摘要: 下文分享两条sql求和脚本,再次求和的方法分享 /* 例: 下文已知两条sql求和脚本,现需对两张不同表的求和记录再次求 ...
- SQL SERVER 查询表的行数
SELECT OBJECT_NAME(ii.id) TableName ,rows FROM sysindexes ii INNER JOIN sysobjects oo ON ( oo.id = i ...
- 自动化测试基础篇--Selenium简介
摘自https://www.cnblogs.com/sanzangTst/p/7452636.html 一.软件开发的一般流程 二.什么叫软件测试? 软件测试(英语:Software Testing) ...
- SQL Server 事务隔离级别
一.事务隔离级别控制着事务的如下表现: 读取数据时是否占用锁以及所请求的锁类型. 占用读取锁的时间. 引用其他事务修改的行的读操作是否: 在该行上的排他锁被释放之前阻塞其他事务. 检索在启动语句或事务 ...
- Zabbix WMI监控
检查Windows OS是否激活,5表示处于通知模式,1表示已激活 wmi.get[root\cimv2,select LicenseStatus FROM SoftwareLicensingProd ...
- 4.11Python数据处理篇之Matplotlib系列(十一)---图例,网格,背景的设置
目录 目录 前言 (一)图例legend 1.默认不带参数的图例 2.添加参数的图例 3.将图例移动到框外 (二)网格grid 1.说明 2.源代码: 3.输出效果 (三)背景axses 1.设置全局 ...