1.下载jenkins

地址:https://jenkins.io/index.html

本人下载了2.19.3版本的war包:jenkins.war

2.安装jenkins

拷贝jenkins.war到tomcat的webapps文件夹下,如果tomcat是启动的,jenkins项目会自动解压启动的,如果tomcat是停止的,需要启动tomcat服务,进入bin文件夹,linux环境下执行 ./startup.sh即可启动服务,windows下双击startup.bat即可。

然后,访问地址:http://192.168.17.155:8080/jenkins ,具体ip为你部署的机器的ip, 看到如下界面,那么恭喜你,jenkins启动了。

为了安全,jenkins要求你填写初始化密码,密码在提示的文件里面,找到该文件,拷贝出密码,填写在下面的文本框中,点击Continue即可。(如果windows下,tomcat的控制台也能看到提示的密码,linux下查看tomcat的catalina.out这个日志文件中也能找到此密码。)

选择安装方式,选择第一种即可,点击一下,进入如下界面

各种插件安装完后,开始设置账户信息,以后用此账户登录jenkins

然后进入首页

3.安装插件

上述默认安装的插件还不够

依次点击 系统管理->插件管理-> 可选插件-> 过滤搜索框中 查找如下插件:

Maven Integration plugin

SSH plugin

Deploy to container Plugin

4.新建构建任务

找到代码管理的地方,如果是svn管理的,请选择Subversion,填入项目地址和账号信息,如果是git,填写git信息即可

构建触发器,去掉所有勾选,采用手动点击触发即可

上述信息提示配置一下maven的安装路径,我们照做即可,顺便配置好jdk路径

maven构建命令配置

部署配置

tomcat用户在conf/tomcat-user.xml里面配置即可,下面给出配置

<tomcat-users>

 <role rolename="manager-gui" />
<role rolename="manager-status" />
<role rolename="manager-jmx" />
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/> <user username="tomcat" password="tomcat" roles="manager-gui,manager-status,manager-jmx,manager-script,admin-gui,admin-script"/> </tomcat-users>

保存配置

5.构建

点击导航jenkins -> My Views -> 点击study项目-> 立即构建

如果发现界面卡死,可能是jdk内存溢出,出现如下

设置一下tomcat的jdk参数即可

windows在catalina.bat 文件里添加如下参数(添加到文件开头):

set JAVA_OPTS=-server -XX:PermSize=512M -XX:MaxPermSize=2048M -Xms512M -Xmx2048M -XX:MaxNewSize=512M

linux在catalina.sh文件里添加如下参数(添加到文件开头):

JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

是否添加成功,可以使用 jps -v 命令查看(windows和linux下均可)

重新启动tomcat,重新点击构建即可,在Console Output里可以看到整个构建的过程,出现如下图就表示整个构建部署成功了

6.附上shell脚步部署方式,更加灵活些(jenkins和服务器必须都是linux机器)

思路就是,执行远程脚本关闭tomcat,然后执行本地脚本拷贝文件到远程,再执行远程脚本启动tomcat服务。上述scp命令传输文件不用密码,必须配置一下ssh的密钥对,配置方式如下:

这里假设主机A(192.168.100.3)用来获到主机B(192.168.100.4)的文件。

在主机A上执行如下命令来生成配对密钥:
ssh-keygen -t rsa

遇到提示回车默认即可,公钥被存到用户目录下.ssh目录,比如root存放在:

/root/.ssh/id_rsa.pub

将 .ssh 目录中的 id_rsa.pub 文件复制到 主机B 的 ~/.ssh/ 目录中,并改名为 authorized_keys,
到主机A中执行命令和主机B建立信任,例(假设主机B的IP为:192.168.100.4):

scp ~/.ssh/id_rsa.pub 192.168.100.4:/root/.ssh/authorized_keys

下面就可以用scp、ssh命令不需要密码来获取主机B的文件了
ssh 192.168.100.4 回车就不需要密码了。

如果机器B添加多个别的机器的公钥,则需要在authorized_keys中追加公钥内容,命令如下:
cat id_rsa.pub >> /root/.ssh/authorized_keys

使用jekins自动构建部署java maven项目(jdk1.7+tomcat7.0+jenkins2.19.3)的更多相关文章

  1. Ant + Jenkies +Tomcat 自动构建部署Web项目

    前言:博主资历尚浅,很多东西都还在刚起步学习的阶段,这几天开发任务比较轻,就在自己window系统下,模拟部署远程服务器,利用Jenkies + Ant + Tomcat 搭建了一个自动发布部署的环境 ...

  2. dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器

    # dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...

  3. 【IDEA使用技巧】(4) —— IDEA 构建Java Maven项目、导入Eclipse项目、多Module Maven项目

    1.IntelliJ IDEA构建Java Maven项目 1.1. IDEA构建Java Maven项目 ①选择Create New Project,选择创建Maven项目,并勾选Create fr ...

  4. Java Maven项目之Nexus私服搭建和版本管理应用

    转载自:https://cloud.tencent.com/developer/article/1010603 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓 ...

  5. Linux(Centos)之安装tomcat并且部署Java Web项目

    1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图:          b ...

  6. 如何在tomcat中如何部署java EE项目

    如何在tomcat中如何部署java EE项目 1.直接把项目复制到Tomcat安装目录的webapps目录中,这是最简单的一种Tomcat项目部署的方法,也是初学者最常用的方法.2.在tomcat安 ...

  7. Linux(Centos)之安装tomcat并且部署Java Web项目(转)

    1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图:          b ...

  8. 阿里云服务器部署Java Web项目全过程

    最近需要将一个Java Web项目部署到服务器上,方便多人共享访问.这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功,写下一篇文章记录以便日后回顾. 购买服务器 第一步当然是需要购 ...

  9. 使用Docker+Jenkins自动构建部署

    环境 Windows 10 Docker Version 18.06.1-ce-win73 (19507) 运行jenkins 运行jenkins 容器 docker run -d --name ln ...

随机推荐

  1. 用spm2构建seajs项目的过程

    前言 Javascript模块化规范有CommonJs规范,和主要适用于浏览器环境的AMD规范,以及国内的CMD规范,它是SeaJs遵循的模块化规范.因为以前项目中用SeaJs做过前端的模块管理工具, ...

  2. nginx 基础

    同步和阻塞,异步和非阻塞 http://yaocoder.blog.51cto.com/2668309/1308899  (51CTO) https://segmentfault.com/a/1190 ...

  3. ASP.NET Core 中文文档 第二章 指南 (09) 使用 Swagger 生成 ASP.NET Web API 在线帮助测试文档

    原文:ASP.NET Web API Help Pages using Swagger 作者:Shayne Boyer 翻译:谢炀(kiler) 翻译:许登洋(Seay) 对于开发人员来说,构建一个消 ...

  4. Rafy 框架 - 插件级别的扩展点

    本章说明如何使用额外的插件(如客户化插件)对另一插件(如产品插件)进行扩展.   使用场景 在 产品线工程 中,项目的研发分为领域工程和应用工程.这个过程中会需要对领域工程中的内容进行大量的扩展.   ...

  5. MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件

    类似于多层级的角色与权限控制功能,用MVC实现MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件.最近我们的项目中需要用到树型菜单,以前使用WebForm时,树型菜单有微软提供的 ...

  6. ef

    现阶段使用回溯 entityframework作为.net平台自己的一个orm的框架,之前在项目中也有使用,主要采用了table和model first的方式,此两种感觉使用上也是大同小异.在项目中经 ...

  7. Springl利用Aspectj的扩展实现Aop

    1. Spring为什么要使用Aspectj Spring Aop:Spring自己原生的Aop,只能用一个词来形容:难用. 你需要实现大量的接口,继承大量的类,所以spring aop一度被千夫所指 ...

  8. 运算符.png

  9. Ueditor上传图片后自定义样式类名

    Ueditor是百度的一个富文本插件,如果使用者会前端语言的话,那适用性就很好,特别是现在移动端纵横的情况.但往往使用者并不懂编程,要让他们使用前端语言的话是不可能的,这就需要我们在开发时就定义好整个 ...

  10. canvas贝塞尔曲线

    贝塞尔曲线 Bézier curve(贝塞尔曲线)是应用于二维图形应用程序的数学曲线. 曲线定义:起始点.终止点.控制点.通过调整控制点,贝塞尔曲线的形状会发生变化. 1962年,法国数学家Pierr ...