前言

最近自己在探索springboot框架,了解到 jenkins 具有 自动我github 上带项目部署到 tomcat 中。于是决定先搭建一个jenkins 环境在继续研究。

Jenkins简介

Jenkins的更多详细简介请自行 Baidu 或者 google 这里我就不赘述了,(还是因为我懒。。。)

通俗的讲一下,Jenkins本质上是一个java项目。下载地址:https://jenkins.io/download/

如何启动:

现在下来的文件实际上是一个war包。

因此 我们可以通过以下:两种方式来启动它:

  1. 直接将war丢到 tomcat 中启动,访问地址 “http://${服务器Ip}:${tomcat端口号}/${Tomcat包名Root忽略}/” 
    例如:       我的访问地址即为:    http://127.0.0.1:7979/jenkins/
  2. 可以通过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中的代码到 服务器。的更多相关文章

  1. Docker+Jenkins持续集成环境(4):使用etcd+confd实现容器服务注册与发现

    前面我们已经通过jenkins+docker搭建了基本的持续集成环境,实现了服务的自动构建和部署,但是,我们遇到一个问题,jenkins构建出来的镜像部署后,需要通过ip:port去访问,有什么更好的 ...

  2. jenkins持续集成原理

    转载: 原文地址:http://www.2cto.com/kf/201609/544550.html 持续集成 开发中,我们经常遇到一些奇怪问题,比如本地可以编译成功的代码但是同事们更新代码后编译出错 ...

  3. Windows 环境下进行的jenkins持续集成

    一台服务器作为代码仓库,一条服务器做持续集成代码仓库目前常见的github.gitlab.gitee持续集成常用Jenkins 服务器的配置这边都以Windows为例进行介绍 1. 安装Jenkins ...

  4. Jenkins持续集成学习-搭建jenkins问题汇总

    目录 Jenkins持续集成学习5-搭建jenkins问题汇总 目录 前言 问题列表 nuget还原包问题 编译问题 SVN更新问题 参考文档 Jenkins持续集成学习5-搭建jenkins问题汇总 ...

  5. Jenkins持续集成学习-Windows环境进行.Net开发4

    目录 Jenkins持续集成学习-Windows环境进行.Net开发4 目录 前言 目标 Github持续集成 提交代码到Github 从Github更新代码 git上显示构建状态 自动触发构建 Gi ...

  6. 自动化打包 Jenkins 持续集成 Git Gradle MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. Python接口测试实战5(上) - Git及Jenkins持续集成

    如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...

  8. Docker+Jenkins持续集成

    Docker+Jenkins持续集成 使用etcd+confd实现容器服务注册与发现   前面我们已经通过jenkins+docker搭建了基本的持续集成环境,实现了服务的自动构建和部署,但是,我们遇 ...

  9. jenkins持续集成工作原理、功能、部署方式等介绍

    超详细的jenkins持续集成工作原理.功能.部署方式等介绍 原创 波波说运维 2019-08-29 00:01:00 概述 今天简单整理了一下jenkins的一些概念性内容,归纳如下: 1.概念 j ...

随机推荐

  1. 关于linux防火墙

    1.防火墙是什么:防火墙就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防火墙如何工作 ...

  2. 【React入门实例(运行于浏览器duan)】

    一.HTML模板 二.ReactDOM.render() ReactDOM.render是React的最基本方法,用于将模板转换为HTML语言,并插入指定的DOM节点. ReactReactDOM.r ...

  3. Python中导入第三方声源库Acoular的逻辑解释以及Acoular的下载

    [声明]欢迎转载,但请保留文章原始出处→_→ 秦学苦练:http://www.cnblogs.com/Qinstudy/ 文章来源:http://www.cnblogs.com/Qinstudy/p/ ...

  4. valid palindrome(回文)

    Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignori ...

  5. Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)

    Jsp 环境目前最流行的是 Tomcat5.0.Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没必要把 Tomcat 与 IIS 或 Apache 集成起来.在 Tomcat 自带的 ...

  6. Java语言概论

    第1章 ■    Java的发展简史及特点 ■    J2SDK的下载与安装 ■    Java应用程序的编写 ■    Eclipse的下载及使用 ■    正确安装使用J2SDK ■    使用记 ...

  7. 第15章-输入/输出 --- 理解Java的IO流

    (一)理解Java的IO流 JAVA的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出(键盘.文件.网络连接等)抽象表述为"流"( ...

  8. JVM组成

    java内存组成介绍:堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配.堆是在 Java 虚拟机启动时 ...

  9. laravel项目使用twemproxy部署redis集群

    twemproxy是twitter开发的一个redis代理proxy,Twemproxy可以把多台redis server当作一台使用,开发人员通过twemproxy访问这些redis servers ...

  10. Python_自定义栈

    customStack.py '''栈:是一种运算受限的线性表,其特点在于仅允许在一端进行元素的插入和删除操作,最后入栈的最先出栈,而最先入栈的元素最后出栈''' s = [] s.append(3) ...