jenkins 学习

使用jenkins自动部署代码。

war包下载地址:jenkins.war-Web服务器文档类资源-优快云下载

在使用jenkins之前, 部署流程是这样的:

每一个开发人员开发好自己的代码之后, 都提交到svn。 当要进行项目部署的时候,开发者从svn上拉取最新的全部完整代码到本地。 然后使用maven命令在本地进行打包。在打成war包后,将war包上传到服务器的tomcat。 然后启动tomcat更新代码。 这里会出现的问题是: 我们一个系统经常会有多个版本, 或者会有一个测试服务器,一个正式服务器, 或者还有一部分客户一个服务器的情况。这时候要发布一版代码就会非常的麻烦。 要进入多个服务器进行打包。

所以需要引进一个工具,我们只需要将自己开发的代码提交的svn。 工具会帮我们自动打包部署。 这个工具就是jenkins。

在引入jenkins之后,部署环境的流程变成了这样:

我们只需要提交代码到svn。 代码一旦提交,会触发一个钩子程序,钩子程序将做如下的事情:

1:通知jenkins, 让jenkins从我们配置的指定的svn上下载全部程序。 

2:jenkins调用我们配置的指定的mavne来对源代码进行打包。

3:jenkins调用deploy to web container插件将maven构建好的war包部署到我们指定的tomcat上。

4:项目构建部署完成。

由上可知,我们只需要提交代码,其余的部署工作由jenkins代替我们来完成。

为了让jenkins代替我们完成这些工作,我们需要配置jenkins。

我们需要做如下工作:

1:让jenkins绑定jdk.

2:  让jenkins绑定svn

3:让jenkins绑定maven

4:  让jenkins绑定tomcat.

接下来,我们来配置jenkins。

准备一个tomcat , 这个tomcat是我们要部署项目的tomcat。 可以在本地,可以在服务器,按需要配置。 一下全部在本地实验。

1:将jenkins.war包放在tomcat 的webapps目录下。

2:编辑conf/tomcat-users.xml文件。 加入如下内容:

  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <user username="manager-jmx" />
  <user username="manager-status" />
  <user username="tomcat_user" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

3:编辑conf/server.xml文件。对编码进行设置。

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="UTF-8"/>

4:启动tomcat。

然后在浏览器输入: http://localshot:8080/jenkins/进入如下界面。

第一次进入界面,jenkins会提示要我们输入一个秘钥,这个密码在下图红字显示的地址里, 我们找到这个文件,把文件中的秘钥输入进去即可。

其实这个秘钥就是管理员密码,由系统自动生成。

接着安装必要要插件,我们选择左边 《安装推荐的插件》,注意需要连外网,所有插件必须全部安装完成。 如果有的插件安装失败,可以重试安装。

安装插件完成后,jenkins提示我们创建一个用户,我们这里不创建用户了, 直接用管理员进行登陆。

在配置前,我们做如下事情:

进去全局安全配置界面,我们设置成允许用户注册,这样在我们忘记管理员密码后,还可以创建用户。

还要设置  任何用户可以做任何事情。 这个开放权限方便我们测试。

用管理员身份进入界面后,我们开始配置之前说的几个事项。

在左侧选择系统配置, 右侧选择 全局工具配置。

第一步,我们先来配置maven。

在下面输入我们安装好的maven工具的settings文件的位置。 以后jenkins将拉下来的代码用maven打包时就会从这个地方找maven的相关配置。

第二步: 我们配置JDK

给jdk起个名字,然后指定java_home。(本机已经装好了jdk)

第三步:我们配置maven。

我们指定maven路径。 以后jenkins要下依赖就下到这个maven中。

第四步:要从svn拉取代码的话,得绑定svn, 这里需要svn插件的支持,我们没有安装, 所以这里得安装这个插件。

插件管理中心搜:Subversin , 将这个插件装上, 重启tomcat ,(就是重启jenkins)

再装一个deploy to container插件。他负责把war包部署到tomcat。

接着,我们开始部署项目:

首先,创建又给工程或者叫任务。

配置SVN。 将我们的代码路径填进去。 要保证这个路径下直接有pom文件。也就是这个路径是有pom文件的一层路径。

这里填好svn地址后, 每次构建项目,默认会拉取最新提交的上次个版本的代码。换句话说,拉取构建的不是最新版的代码。要想拉取最新版代码,需要在svn的url后面加上  @HEAD 关键字。

接着配置maven。 

我们选择要执行的maven 命令。 和手动打包时一样, 先清理,在install。

最后,我们开始构建项目。

此时的构建是手动构建。 第一次是这样。

这里的构建就是最开始的图示流程,jenkins从svn开始下代码,然后找到maven开始下依赖的jar包,接着执行我们指定的clean install命令将项目打成war包。然后用deploy to container插件将war放到我们指定的tomcat 中。

最后构建成功

注意:如果在打包前替换文件的话,如下操作:

参考这篇博文。 主要是下载一个插件,用这个插件去在打包前替换文件。 比如,替换pom文件。

Jenkins笔记三:拉取代码后替换配置文件再打包_正在小升初的博客-优快云博客

这样在启动前就可以替换文件了。

 此时,jenkins已经可以从svn拉下来代码并用maven构建出war包了。现在还差一步,就是让jenkins将war包发布到tomcat中去。

这一步在《构建后步骤》中进行操作。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值