1. 安装svn:用于checkout源码

(1)yum 安装:yum -y install subversion

(2)查看svn版本信息:svnserver --version

2. 安装jdk

(1)上传已经下载好的jdk1.8.0_144.tar.gz到linux服务器

(2)解压tar zxvpf jdk1.8.0_144.tar.gz

(3)拷贝至/usr/local/java目录下 cp -rf jdk1.8.0_144 /usr/local/java/

(4)修改/etc/profile,配置环境变量

(5)重新加载profile source /etc/profile

3. 安装tomcat:用于运行jenkins

(1)上传已经下载好的tomcat安装包到linux服务器

(2)解压 tar zxvpf apache-tomcat-7.0.90.tar.gz

(3)重命名为tomcat

(4)修改conf/server.xml connet端口8080为80:

4.安装maven,用于编译工程

(1)下载maven安装包apache-maven-3.3.9.tar.gz,并上传到linux服务器

(2)解压tar zxvpf apache-maven-3.3.9.tar.gz

(3)配置maven环境变量

5.安装jenkins:

(1)下载jenkins.war https://jenkins.io/download/

(2)将jenkins.war上传到linux服务器tomcat的webapps目录下

(3)执行tomcat的bin目录下的startup.sh,运行tomcat

6. jenkins初始化:

(1)tomcat服务启动完成后,访问10.10.0.152/jenkins,具体IP为部署linux服务器ip,若看到以下页面,则jenkins启动成功;否则根据具体启动失败错误日志定位查找解决方案:

(2)在linux服务器上, vi打开上图文件,复制密码

(3)拷贝到上图密码输入框,点击continue

(4)选择安装方式,点击一下,开始安装插件

(5)插件安装完成后,开始设置账户信息,设置完成后,点击save and finish

(6)进入jenkins首页,jenkins初始化完成

7. jenkins节点配置

(1)点击【系统管理】-【全局安全配置】,将agent由disable改为random,save保存

(2)点击【系统管理】-【节点管理】,点击【New Node】新建一个节点

(3)输入节点名称,选择【固定节点】,点击【OK】

(4)配置【Remote root directory】、【Launch Method】,点击【save】保存,节点建立成功

(5)在节点列表可以看到节点仍为X号,尚未连接成功

(6)点击launch下载agent.jar包(上图为slave.jar),将agent.jar上传到之前配置的remote root directory目录下,如我的为/home/jenkins/

(7)复制(5)图中红框内的那条java执行命令(每个人不一样),编写一个sh脚本,用于后台运行该命令,如我的startSlave.sh

(8)后台运行脚本 ./startSlave.sh &,运行前节点为【offline】状态,运行后节点为【connet状态】

8. 自动化构建打包

(1)点击【New 任务】新建一个任务,输入任务名称,选择任务类型,点击【ok】

(2)关联节点:勾选【Restrict where this project can be run】,输入之前建立的节点名称

(3)执行打包配置(此处本人未使用jenkins自带的maven、svn插件),使用shell脚本进行打包,所以此处直接执行 sh pack.sh;pack.sh需手动放入jenkins对应的workspace目录下

(4)点击save,打包任务建立完成,点击【立即构建】,开始自动打包,打包完成后,如下图

(5)点击workspace就可以看到pack.sh打包脚本生成的安装包

9.自动部署

(1)新建任务

(2)基本与自动打包一致,下处有区别,设置后,只有上一步PACK任务成功后,才会执行本部INSTALL任务

(3)此处安装也是自己编写的install脚本:

(4)save后,点击【立即构建】即可,构建结束后,自动部署完成

Jenkins - 持续集成部署的更多相关文章

  1. jenkins持续集成部署

    用到的技术和工具:git + maven + jdk + jenkins,首先服务器安装git.maven.jdk,这些都不再赘述. 1:开始安装主角jenkins,首先去官网下载war包(https ...

  2. windows部署jenkins持续集成maven测试项目不能访问测试报告

    买了一台阿里云的服务器用于练习maven test项目,系统版本wiondows server 2012,将jenkins war包部署在Tomcat服务器上,项目构建后,生成的报告在C:\Windo ...

  3. Linux-GitLab+Jenkins持续集成+自动化部署

    GitLab+Jenkins持续集成+自动化部署 什么是持续集成? (1)Continuous integration (CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个 ...

  4. CentOS 7 Gitlab+Jenkins持续集成+自动化部署

    基于上次的环境<部署Gitlab+Jenkins持续集成环境> 来实现自动化部署 系统管理–>插件管理–>安装以下插件: Credentials Plugin(默认已经安装) ...

  5. .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统

    .NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言     相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...

  6. Centos7.4简单安装使用gitlab+maven+jenkins实现java代码的持续集成部署

    1.工具的简单介绍 gitlab--源代码版本管理控制工具 maven--java代码编译构建工具 jenkins--基于java开发的自动化持续集成部署工具 sonar--代码质量管理工具 2.gi ...

  7. Jenkins持续集成企业实战系列之两种网站部署的流程-----01

    注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...

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

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

  9. Jenkins持续集成(下)-Jenkins部署Asp.Net网站自动发布

    环境:Windows 2008 R2.Jenkins2.235.1.Visual Studio 2017: 概要 前面写过一篇文章,<自动发布-asp.net自动发布.IIS站点自动发布(集成S ...

随机推荐

  1. Java中Thread类的join方法到底是如何实现等待

    现在的场景是A线程执行:public void run(){ bThread.join(0);//把b线程加入到当前线程(a线程),等待b结束,当前a线程才会结束.}B线程执行public void ...

  2. 【洛谷P3469】[POI2008]BLO-Blockade

    BLO-Blockade 题目链接 若一个点为割点:统计出每个子树的大小,两两相乘再相加, 再加上n-1,为这个点与其他点的拜访数, 因为拜访是互相的,最后再乘二即可 若一个点不是割点:只有(n-1) ...

  3. JavaScript函数变量作用域

    变量作用域 在JavaScript中,用var申明的变量实际上是有作用域的. 如果一个变量在函数体内部申明,则该变量的作用域为整个函数体,在函数体外不可引用该变量. 如果两个不同的函数各自申明了同一变 ...

  4. JDBC连接数据库时错误提示的解决方案汇总

    今天在连接JDBC时,出现了错误 最开始的URL是这样写的 Connection conn = DriverManager.getConnection("jdbc:mysql://local ...

  5. 为什么需要Vlan ? Vlan实现原理 ? 不同Vlan的通信 ?

    好文章!!良心推荐!!! 原文链接 https://blog.csdn.net/cwm_meng_home/article/details/49762807

  6. 微信小程序已发布版本vconsole仍出现问题解决办法

    解决办法很简单,进入小程序的体验或者开发版,点击关闭调试,再次进入小程序,就不会出现了

  7. 重写Alert和confirm方法去除地址显示

    //重写alert方法,去掉地址显示window.alert = function(name){var iframe = document.createElement("IFRAME&quo ...

  8. MVVM、MVC框架的认识

    推荐博客: https://blog.csdn.net/jia12216/article/details/55520426 https://www.cnblogs.com/sunny_z/p/7093 ...

  9. 『ACM C++』Virtual Judge | 两道基础题 - The Architect Omar && Malek and Summer Semester

    这几天一直在宿舍跑PY模型,学校的ACM寒假集训我也没去成,来学校的时候已经18号了,突然加进去也就上一天然后排位赛了,没学什么就去打怕是要被虐成渣,今天开学前一天,看到最后有一场大的排位赛,就上去试 ...

  10. POJ2823 滑动窗口

    滑动最小(最大)值,模版题. 题意:给一个数列,给一个窗口大小k,顺序求每个窗口中最大值和最小值. 和挑战中的例题一模一样,就多了一个求最大,改个大于小于符号就行. 算法是利用双端队列: 以求最小值为 ...