Jenkins 详细安装、构建部署 使用教程

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。

本文使用的Linux:Ubuntu

其中JDK、Tomcat、SVN服务器请看这里Ubuntu安装配置JDK、Tomcat、SVN服务器

一、安装Jenkins

本文直接使用war包安装

下载地址:https://jenkins-ci.org/content/thank-you-downloading-windows-installer/

war包有两种安装方法

方法一

下载jenkins.war, 拷贝到D:\Java\Tool\jenkins()下,然后运行java -jar jenkins.war. (注意需要先安装JDK,然后设置JAVA_HOME环境变量且将%JAVA_HOME%\bin加入到PATH环境变量中)

运行如下:
 

访问http://localhost:8080 , jenkins的主界面如下:

方法二

把Jenkins 1.409.1版解压,把得到的war包直接扔到tomcat下,启动tomcat,Jenkins就安装完毕,访问http://localhost:8080 

 

二、构建一个Maven项目

1、新建一个job

2、输入名称和项目类型

3、设置编译的版本号等信息

4、设置svn库地址:

输入项目托管的svn的地址,如果有出现要输入账号和密码的地方,输入即可。

如果有出现如下说明用户或密码不对:

 

点击进去重新设置用户和密码

5、配置jdk和maven

第一次打开出现如下,点击进去。要求提示设置JDK和Maven

点击系统管理-》系统设置,找到JDK和Maven的设置位置

选择本电脑的:

9、到这里已经可以构造这个项目了。

点击构建

构建输出的信息:

构建成功输出如下 :

10、验证

这时它已经自动把这个项目打包了一个war包,默认打包到了C:\Users\linbingwen\.jenkins\workspace\JavaWeb\JavaWeb\target

 

或者点击如下:

 

三、自动远程部署到tomcat

接下来要完成自动构建成war包后,将些war包上传到远程linux的tomcat的webapps目录,更新项目的war包,并重启tomcat.

1、安装插件

系统管理-》管理插件,在可选插件里找到下面这个,然后点击直接安装命令,安装成功后要重启jenkins

t笔者在安装插件时报错如下:

 

这应该是天朝的墙所导致的,所以笔者就使用了手动安装的方式。

解决方法:

手动安装

到https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin,下载hpi到本地电脑到

在系统管理--管理插件--高级--浏览-上传插件即可

然后它自动上传并安装:

红色的是笔者在线安装不成功的,蓝色的是笔者安装成功的了,之后重启jenkis即可。

2、配置ssh内容:

在系统管理-》系统设置里

找到Publish over SSH
然后输入:

3、配置Post Steps
这里还是接着上面的JavaWeb项目,这个配置得安装了上面的插件后才会显示!


 

其中,
Transfer SetSource files:表示要上传的本地的war包及路径,可到工作空间去看


Remove prefix:表示要上传时要去除的文件夹,即只上传war包


remote driectory:即表示执行时的路径,相当于把war包上传到这里了


exec commad:要执行的命令

 

要执行的脚本的内容:

 
  1. #!/bin/sh

  2. #defined

  3. TOMCAT_HOME="/usr/java/tomcat/apache-tomcat-7.0.67/"

  4. ID=`ps -ef | grep java | grep tomcat|awk '{print $2}'`

  5. echo $ID

  6. echo "kill tomcat"

  7. kill -9 $ID

  8. echo "remover war file"

  9. cd "$TOMCAT_HOME"/webapps

  10. rm -rf JavaWeb-0.0.1-SNAPSHOT

  11. rm -rf JavaWeb-0.0.1-SNAPSHOT.war

  12. echo "copy war to webapp"

  13. cd /home/lin

  14. cp JavaWeb-0.0.1-SNAPSHOT.war "$TOMCAT_HOME"/webapps

  15. cd "$TOMCAT_HOME"/bin

  16. echo "start tomcat"

  17. ./startup.sh

步骤:

先停掉tomcat

删除webapp下对应的war包

复制war到webapps

重启tomcat
 

 

4、构建部署

点击项目的构建按钮,最终出现如下:

 

在linux上打开浏览器,输入http://localhost:8080/JavaWeb-0.0.1-SNAPSHOT/

 

注意:这里配置的ssh用户:lin要有root的权限,要不可以会报错没有权限执行kill 或rm 命令

 

本文使用的Linux:Ubuntu14.04

其中JDK、Tomcat、SVN服务器请看这里Ubuntu安装配置JDK、Tomcat、SVN服务器

 

转自:https://blog.csdn.net/evankaka/article/details/50518959

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/448754.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GPU并行计算版函数图像生成器

前几天技术大牛Vczh同学开发了一个函数图像绘制程序,可以画出方程f(x,y)0的图像。他的原理是用图像上每一点的坐标带入函数f得到针对x和y的两个方程,再用牛顿迭代法求解得到一组点集,然后画到图像上。用他的程序可以画出各种各样令人惊叹的方…

完全平方公式、平方差公式、一个数负次方

1.完全平方公式: 两数和(或差)的平方,等于它们的平方和,加上(或减去)它们的积的2倍即完全平方公式 (ab)2a2b22ab 两数和的完全平方公式(完全平方和) 与(a-b)2a2b2-2ab …

WSS连接服务器端报错

错误: 1. Firefox 和 Chrome 浏览器对SSL证书拒绝的错误提示是不一样的: (1) Chrome报错:WebSocket connection failed: Error in connection establishment: net::ERR_CERT_AUTHORITY_INVALID (2&#xff…

LogBack 入门实践

一、简介 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 LogBack是一个日志框架,它是Log4j作者Ceki的又一个日志组件。 LogBack,Slf4j,Log4j之间的关系 slf4j是The Simp…

20个公司绝对不会告诉你的潜规则

1.入职时的工资高低不重要,只要你努力工作你会得到相应待遇的    我估计几乎找过工作的人都听过这句话,当我们确定被聘用跟公司谈工资时,他们都会说“如果以后你业绩突出、努力工作,你的报酬也会相应增加的”,特别是…

java 复制文件

2019独角兽企业重金招聘Python工程师标准>>> public class copyFIle { public static void main(String[] args) throws IOException { File source new File("d:/test/1.xml");File des new File("d:/test/ma.txt");InputStream input null;…

Quartz学习资料地址记录 、Quartz 学习的博客地址记录

Quartz专栏系列 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1.Quartz学习——Quartz大致介绍(一) 2.Quartz学习——Quartz简单入门Demo(二&#…

民间75个不传之密 ,医院都不知道的秘密

1、头痛(各种头痛均可): 生白萝卜汁,每次滴鼻孔两滴(两鼻孔都滴),一日两次,连用4-5天,可除根。忌吃花椒、胡椒。 2、头晕(头昏眼花、晕眩): 鸭蛋一个、赤豆2…

Docker最全教程之MySQL容器化 (二十四)

Docker最全教程之MySQL容器化 (二十四) 原文:Docker最全教程之MySQL容器化 (二十四)前言 MySQL是目前最流行的开源的关系型数据库,MySQL的容器化之前有朋友投稿并且写过此块,本篇仅从笔者角…

CODING 受邀参加《腾讯全球数字生态大会》

近日,腾讯全年最重要的一场活动——《腾讯全球数字生态大会》于昆明滇池国际会展中心正式举办。此次全球数字生态大会是腾讯战略升级后,整合互联网数字经济峰会、云未来峰会、腾讯全球合作伙伴三大行业大会,全新升级打造的行业创新大会。大会…

解决 dockerfile 构建镜像报错: [WARNING]: Empty continuation lines will become errors in a future release.

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 只是想自己写个 dockerfile 用 docker 来部署 rocketmq 的服务。 dockerfile 中要运行多行命令 于是我写成 RUN 命令a \&&…

第二章:08运算符[比较运算符]

①比较运算符②实例/* 运算符之三&#xff1a;比较运算符 ! > < > < instanceof 结论&#xff1a; 1.比较运算符的结果是boolean类型 2.区分 和 */ class CompareTest { public static void main(String[] args) { int i 10; int j 20; System.out.pr…

Apache版本兼容性问题

Apache 版本2.2.31 版本对于谷歌浏览器不兼容、IE8版本可以正常使用 当使用了Apache 高版本的话就解决了 出现以下现象 转载于:https://www.cnblogs.com/tzhyy/p/10931084.html

王淮经验谈:我的码农原则

摘要&#xff1a;王淮是Facebook第二位中国籍工程师&#xff0c;也是第一位中国籍研发经理&#xff0c;他一手开创了Facebook的支付安全和客服工具领域。2011年他离开Facebook&#xff0c;回国成为天使投资人。本文是王淮以前写代码和做代码审查时候的一些原则&#xff0c;供大…

centos uwsgi自动调用python2环境,指定uwsgi调用版本

将自己开发好的django项目用uwsgi部署到Linux服务器、当运行uwsgi时出现了uwsgi选择python版本的问题。因为本机器是在原来的机器上安装了python3环境和pip3&#xff0c; 使用命令安装uwsgi: pip3 install uwsgi 一点问题也没有&#xff0c;使用uwsgi部署项目时 uwsgi --http :…

docker build Dockfile ---- RUN 中 cd 切换路径失败 的原因、解决

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 我只是想 直接切换到对应目录下 执行后续命令。 ​​​​​写法如下&#xff1a; FROM openjdk:8-jre-alpineMAINTAINER JiangYuRU…

米尔电子Zynq UltraScale MPSoC核心板资料介绍

米尔Zynq UltraScale MPSoC核心板&#xff08;MYC-CZU3EG&#xff09;是采用Xilinx新一代Zynq处理器。该核心板是业界最小尺寸Zynq UltraScale 核心板&#xff0c;采用16纳米制程&#xff0c;相比Znyq7000系列每瓦性能提升5倍&#xff0c;且单芯片融合4核心Cortex-A53&#xff…

幸福秘诀 男女必须要看哦

女人说&#xff1a;这一辈子最大的成功是什么?我认为是找到一个真正疼自己的老公,有了老公的支持才可以把事业做得有声有色,有一个幸福的家和一个可爱的宝宝。 男人说&#xff1a;我的成功是在我的人生之中&#xff0c;是妻子和我形影相随&#xff0c;朝夕相伴。她是我身边…

解决:If the number of processors is expected to increase from one, then you should configure the numbe

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 按官方说明用 docker 部署 rocketmq ,启动 broker 报错&#xff1a; OpenJDK 64-Bit Server VM warning: If the number of processo…

JAVA-缓存机制

本地缓存 继承AbstractBaseLocalCache&#xff0c;并实现相应的抽象方法&#xff1b;适用于单实例项目或不会经常变化的数据&#xff1b;代码示例&#xff1a;/*** 仓库信息缓存类*/ Service public class WarehouseCache extends AbstractBaseLocalCache<Long, Warehouse&g…