通过jenkins持续集成 github中的代码到 服务器。
前言
最近自己在探索springboot框架,了解到 jenkins 具有 自动我github 上带项目部署到 tomcat 中。于是决定先搭建一个jenkins 环境在继续研究。
Jenkins简介
Jenkins的更多详细简介请自行 Baidu 或者 google 这里我就不赘述了,(还是因为我懒。。。)
通俗的讲一下,Jenkins本质上是一个java项目。下载地址:https://jenkins.io/download/
如何启动:
现在下来的文件实际上是一个war包。

因此 我们可以通过以下:两种方式来启动它:
- 直接将war丢到 tomcat 中启动,访问地址 “http://${服务器Ip}:${tomcat端口号}/${Tomcat包名Root忽略}/”
例如:
我的访问地址即为: http://127.0.0.1:7979/jenkins/ - 可以通过java -jar jenkins.war 的方式直接启动这个war包。这种方式 默认的启动端口 为8080 想要修改 因为我的 服务器 8080端口一被占有因此我也没有去尝试启动(应该可以通过修改 war中的文件进行更改端口号,日后我会回来填坑 (。-ω-)zzz Fixme )
启动成功之后 就可访问Jenkins了。
必要的准备工作:
首次进入之后需要 输入一个初次安装密文。如图:

cat 红色背景的地址 将密文复制进去 就能通过验证啦~
紧接着就是插件安装: 左边选项大概含义是安装推荐插件 右边自己选择插件安装(像我这样什么都不懂的点了左边)当然,您也可以在之后的插件管理里进行插件的 删除或者添加。

插件安装好之后创建角色就可以进入了:

主界面:

插件的准备:
这里我们要集成gitHub项目因此 我们需要用到的插件 为 git plugin、和github plugin.(这里具体怎么安装我就不截图了,点进去看看,我想你们肯定看得懂的(๑*◡*๑))

配置Git
点击上图的全局工具配置
。配置下你的git吧 少年!
什么?你没有git?去百度一下吧。linux两行命令的事情。
假如你忘记了git路径 可以通过 “which git”命令来获取。

填入保存

创建新项目:

现在让我们来为 Jenkins 注入灵魂吧 ヽ(゚∀゚)メ(゚∀゚)ノ
输入项目名 并选择项目模板。我们选择创建一个自由风格的 项目。



上图为github代码监听的 两种方式;
注意:
Poll SCM:方式 轮询会存在缺陷 。当下次轮询时 上次的构建仍未执行完,程序会判定此次为新的代码变动。并且再次执行构建。
GitHub hook trigger for GITScm polling:想要使用此功能 需要进行额外配置,配置如下
重写 获取URL:
官方解释了:默认url的配置 ,但通过war安装 成员变量 ${JENKINS_BASE_URL} = null ;我们Override一下吧。


去我们的GitHub中配置一下 webHook

最后一步:进行触发后的构建
这里我使用的是 shell脚本进行构建

图中 我通过执行 自己编写的 shell 脚本进行测试 脚本的内容 是创建一个txt文件

很简单 两行代码;
push一下
开始自动构建
shell脚本执行成功
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
本菜第一次发布博客,如有错误请予以指正并多多包涵。(◕ᴗ◕✿)
下篇 为如何通过 shell 打包 项目 并部署到tomcat中
通过jenkins持续集成 github中的代码到 服务器。的更多相关文章
- Docker+Jenkins持续集成环境(4):使用etcd+confd实现容器服务注册与发现
前面我们已经通过jenkins+docker搭建了基本的持续集成环境,实现了服务的自动构建和部署,但是,我们遇到一个问题,jenkins构建出来的镜像部署后,需要通过ip:port去访问,有什么更好的 ...
- jenkins持续集成原理
转载: 原文地址:http://www.2cto.com/kf/201609/544550.html 持续集成 开发中,我们经常遇到一些奇怪问题,比如本地可以编译成功的代码但是同事们更新代码后编译出错 ...
- Windows 环境下进行的jenkins持续集成
一台服务器作为代码仓库,一条服务器做持续集成代码仓库目前常见的github.gitlab.gitee持续集成常用Jenkins 服务器的配置这边都以Windows为例进行介绍 1. 安装Jenkins ...
- Jenkins持续集成学习-搭建jenkins问题汇总
目录 Jenkins持续集成学习5-搭建jenkins问题汇总 目录 前言 问题列表 nuget还原包问题 编译问题 SVN更新问题 参考文档 Jenkins持续集成学习5-搭建jenkins问题汇总 ...
- Jenkins持续集成学习-Windows环境进行.Net开发4
目录 Jenkins持续集成学习-Windows环境进行.Net开发4 目录 前言 目标 Github持续集成 提交代码到Github 从Github更新代码 git上显示构建状态 自动触发构建 Gi ...
- 自动化打包 Jenkins 持续集成 Git Gradle MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Python接口测试实战5(上) - Git及Jenkins持续集成
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Docker+Jenkins持续集成
Docker+Jenkins持续集成 使用etcd+confd实现容器服务注册与发现 前面我们已经通过jenkins+docker搭建了基本的持续集成环境,实现了服务的自动构建和部署,但是,我们遇 ...
- jenkins持续集成工作原理、功能、部署方式等介绍
超详细的jenkins持续集成工作原理.功能.部署方式等介绍 原创 波波说运维 2019-08-29 00:01:00 概述 今天简单整理了一下jenkins的一些概念性内容,归纳如下: 1.概念 j ...
随机推荐
- .Net中的并行编程-7.基于BlockingCollection实现高性能异步队列
三年前写过基于ConcurrentQueue的异步队列,今天在整理代码的时候发现当时另外一种实现方式-使用BlockingCollection实现,这种方式目前依然在实际项目中使用.关于Blockin ...
- 使用XStream是实现XML与Java对象的转换(3)--注解
六.使用注解(Annotation) 总是使用XStream对象的别名方法和注册转换器,会让人感到非常的乏味,又会产生很多重复性代码,于是我们可以使用注解的方式来配置要序列化的POJO对象. 1,最基 ...
- ionic1 下拉刷新 上拉加载 功能
html页面如下 <ion-content> <ion-refresher pulling-text="刷新" on-refresh="search() ...
- JVM的运行原理以及JDK 7增加的新特性(二)
JVM结构 Java编写的代码会按照下图的流程来执行 类装载器装载负责装载编译后的字节码,并加载到运行时数据区(Runtime Data Area),然后执行引擎执行会执行这些字节码. 类加载器(Cl ...
- 企业级web负载均衡完美架构
转载:揭秘企业级web负载均衡完美架构(图) 2010-07-06 15:16 抚琴煮酒 51CTO.com 字号:T | T 相信很多朋友对企业级的负载均衡高可用实例非常感兴趣,此篇文章根据成熟的线 ...
- WebRequestHelper
老是浪费时间写这个类,干脆记录在博客里: public class WebRequestHelper { #region Post public static CookieContainer GetC ...
- VueJs(9)---组件(父子通讯)
组件(父子通讯) 一.概括 在一个组件内定义另一个组件,称之为父子组件. 但是要注意的是:1.子组件只能在父组件内部使用(写在父组件tempalte中); 2.默认情况下,子组件无法访问父组件上的数据 ...
- eclipse乱码
eclipse乱码:Windows >general >Workspace UTF-8Windows >general >Editors >Text Editors &g ...
- Mysql安装和登录相关操作
一.mysql的下载和安装 1.下载链接地址 http://dev.mysql.com/downloads/mysql/ 安装如下操作进行下载. 2.mysql数据库安装(Windows环境) 1.解 ...
- No plugin found for prefix 'tomcat' in the current project and in the plugin groups和java.net.BindException: Address already in use: JVM_Bind <null>:8080的错误解决
错误报告:No plugin found for prefix 'tomcat' in the current project and in the plugin groups [org.apache ...