Jenkins+Maven+SVN快速搭建持续集成环境

转载 2016年06月10日 23:23:56

在网上看了好多有关集群部署的文章,感觉都不是太连贯,很多只是给你说怎么安装而已,但是过程中遇到的问题真不少,但是也解决了很多问题,希望我的文章能够帮到那些想学习的人吧,jenkins主要是解决了一个集群项目和节点管理的工具,能够方便的把项目分发到个个容器里面去,省去了集群的时候需要一个个往tomcat里面放war包,同时也能够对集群节点的一个状态进行管理。

其实我喜欢先实践后理论,我就不说什么了。

我的环境是jenkins-1.569-1.1.noarch.rpm  我的建议是最好下载这个版本,毕竟稳定,之前我下了老版本和一个最新版,在使用过程中不断报错。系统是centos6.4 64位操作系统,其实没有多大区别因为都是war包的形式,屏蔽了系统的区别。官方还有windows的安装包,但是最好还是下这个版本号的比较合适。

第一步还是得安装

[plain] view plain copy
 print?
  1. <pre name="code" class="plain">  rpm -ivh jenkins-1.569-1.1.noarch.rpm   
  2. #安装完成之后通过这个命令查看是否安装成功,如果有以下提示,代表安装成功  
  3. [root@localhost ftp]# service  jenkins status  
  4. jenkins is stopped  
  5. #启动jenkins  
  6. [root@localhost ftp]# service  jenkins start  
  7. Starting Jenkins                                           [  OK  ]  


这个时候表示已经安装成功,如果是在本地的话可以通过localhost:8080进行访问,它默认启动的端口是8080,当然这个端口是可以更改的

vi /etc/sysconfig/jenkins

找到JENKINS_PORT="8080"  修改参数就行

注册

Jenkins

服务开机启动

 

 

 

#chkconfig jenkins on 

注册

Jenkins

服务开机启动

 

 

 

#chkconfig jenkins on 

注册Jenkins服务开机启动   #chkconfig jenkins on 

如果以上步骤都成功了,然后开始我们的第二步

如何使用:

如果是本机通过localhost:8080访问

大概就是这么一个界面,这个时候其实是可以用的,但是属于不安全阶段,任何人知道端口和ip都能够获取全部的权限,所以这个时候我们需要做用户管理,首先我们先添加一个超级管理员

依次点击 系统管理--》Configure Global Security --》然后勾选第一个选项会出现一下界面

勾选和图上一样的选项

因为是项目的原因所以我选择项目矩阵授权模式,然后添加一个超级管理员

点击添加,然后拖动到最右边,点击那个小图标可以全选所有的权限,至于这些权限是干嘛的我最理论文章中会说明

这个时候会添加成功,然后点击保存结束设置,这个时候再次访问改系统会出现一下页面

这个时候只要注册一个用户名为admin的用户就行了,这里和你添加权限那里的用户名对应。

明天继续第二篇的讲解,将会做maven和多个jenkins的集成

这个是最终登录后的界面

第二篇主要讲对svn的安装和jenkins的集成

大家用yum 进行安装吧,上次弄了一天下了个最新版的svn其实并不好用,直接 yum install subversion

先来配置一下svn的配置,首先建立仓库

mkdir /home/svn

svnadmin create  /home/svn/ceit

cd /home/svn/ceit/conf

conf这个文件夹下主要是一些svn的配置,可以在这里面配置一些成员和项目组人员,之前我建立了一个叫做ceit的仓库,那我就主要是针对这个仓库的用户进行配置,里面有如下几个文件,authz  passwd  svnserve.conf,他们分别是配置用户权限,用户的帐号密码和svn的配置信息的,首先我们先配置一下权限吧

我在这里面配置了一个叫做wk的用户[/]代表了所有路径下的权限都是可读可写,大家可以根据自己的需要进行填写,改写之后保存,然后在passwd文件中添加用户

我添加了一个叫做wk的用户,对应权限配置文件里面的用户,密码为等号后面的属性,这里需要注意一下,不管是前后都不能够用空格。

保存之后就完事了,然后启动你的仓库服务,根据我配置的路径来说就是

svnserve -d  -r /home/svn/ceit

这个时候就启动了svn服务 

#查看是否启动了svn如果有数据显示,表示svn已经启动

ps -ef|grep svn

#这条命令是关闭svn的,根据上面命令显示的进程号

kill -quit 进程号

到这里就完事了。

下一步就是svn和jenkins的整合了

首先你得确保你安装这几个插件,如果没有的话点击上方可选插件进行安装

这个是maven插件

这个主要是用来进行部署的插件

svn插件

确保以上插件都安装成功之后,然后进行下一步,在jenkins中安装maven,这个maven可以选择在jenkins中进行安装

点击系统管理->>系统设置找到maven点击maven安装,如图所示

基本上就是输入名字,这个可以随意填写,然后勾选自动安装,选择版本,这几个步骤都是必须的,然后点击下面的保存,大家一定很奇怪,这样就能够用了吗,一定能够好使了吗,其实在这里maven只是配置而已,在进行项目构建的时候会进行自动下载的,所以在配置jenkins的时候最好保证你的网络畅通,否则会出现意料之外的错误

现在开始整个项目的构建,首先你现在你windows电脑上新建一个maven项目,然后通过window上的工具上传到svn上面去,这个步骤我就不说了,网上大把的教程,先拿我的项目来说我的项目名称叫做Spring,然后我的svn路径是svn://192.168.70.128/svn/ceit/Spring,开始整合

第一步:

在首页点击新建项目

大家按照图书的步骤来,然后点击ok

配置svn的url和用户,填上svn项目的路径,然后点击add按钮添加帐号密码,这里的帐号密码就是我们在svn配置的那个我的是wk,密码123

然后勾选相应的操作,大家看英文应该知道是干嘛的了我就不多解释了

到最后一步了,添加容器的支持,在这里我使用的是tomcat7,点击增加构建后操作步骤,选择Deploy war/ear to a container,然后点击Add Container选择tomcat7

然后填写相应的信息,大家注意我勾选出来的地方,Context path是生成war包的名称,如果是 /那么就是ROOT.war 现在的就会生成Spring.war,至于target/Spring.war,这里根据你maven生成war包的名称填写,但是路径前面必须加上target否则会构建不成功。并且不会产生任何错误,也不会部署项目到tomcat,这里是需要进行注意的,

然后大家需要在tomcat里面配置管理用户的信息,大家可以按照我的文件来也可以直接复制过去

[plain] view plain copy
 print?
  1. <?xml version='1.0' encoding='utf-8'?>  
  2. <!--  
  3.   Licensed to the Apache Software Foundation (ASF) under one or more  
  4.   contributor license agreements.  See the NOTICE file distributed with  
  5.   this work for additional information regarding copyright ownership.  
  6.   The ASF licenses this file to You under the Apache License, Version 2.0  
  7.   (the "License"); you may not use this file except in compliance with  
  8.   the License.  You may obtain a copy of the License at  
  9.   
  10.       http://www.apache.org/licenses/LICENSE-2.0  
  11.   
  12.   Unless required by applicable law or agreed to in writing, software  
  13.   distributed under the License is distributed on an "AS IS" BASIS,  
  14.   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
  15.   See the License for the specific language governing permissions and  
  16.   limitations under the License.  
  17. -->  
  18. <tomcat-users>  
  19. <!--  
  20.   NOTE:  By default, no user is included in the "manager-gui" role required  
  21.   to operate the "/manager/html" web application.  If you wish to use this app,  
  22.   you must define such a user - the username and password are arbitrary.  
  23. -->  
  24. <!--  
  25.   NOTE:  The sample user and role entries below are wrapped in a comment  
  26.   and thus are ignored when reading this file. Do not forget to remove  
  27.   <!.. ..> that surrounds them.  
  28. -->  
  29.   
  30. <role rolename="tomcat"/>  
  31.   <role rolename="role1"/>  
  32.   <role rolename="manager-gui"/>  
  33.   <role rolename="manager-script"/>  
  34.   <role rolename="manager-jmx"/>  
  35.   <role rolename="manager"/>  
  36.   <role rolename="manager-status"/>  
  37.   <user username="tomcat" password="tomcat" roles="tomcat"/>  
  38.   <user username="both" password="tomcat" roles="tomcat,role1"/>  
  39.   <user username="role1" password="tomcat" roles="role1"/>  
  40.   <user username="admin" password="admin" roles="manager,manager-gui,manager-script,manager-jmx,manager-status"/>  
  41.   
  42. </tomcat-users>  

在这里我们用到的是admin那个用户,密码就是我们配置好的密码

一切都配置好之后,点击保存,然后来到首页,你会看见你的项目,然后点击进去,点击构建

然后点击左方的控制台输出,可以看见构建的日志,然后有一点需要进行强调,

tomcatManager status code:403, ReasonPhrase:Forbidden
当你看见这个错误的时候,需要进行两步检查,第一检查你tomcat用户的权限是否配置和我的一样,第二,你需要配置maven的tomcat插件


[plain] view plain copy
 print?
  1. <plugin>  
  2.                <groupId>org.apache.tomcat.maven</groupId>  
  3.                <artifactId>tomcat7-maven-plugin</artifactId>  
  4.                <version>2.1</version>  
  5.   
  6.   
  7.                <configuration>  
  8.   
  9.                    <port>8081</port>  
  10.                    <url>http://192.168.70.128:8081/manager/text</url>  
  11.                    <server>tomcat</server>  
  12.                    <update>true</update>  
  13.                    <username>admin</username>  
  14.                    <password>admin</password>  
  15.   
  16.                </configuration>  
  17.            </plugin>  
注意上面的url6和7是不一样的

如果发生的是401,说明你的用户不存在

如果一切都成功,那么恭喜你 人品好啊,差不多到此结束了,在接下来的文章里面我会讲述,tomcat集群以及nginx的管理几乎把整个集群环境搭建和集群部署搭建起来


jenkins+svn+maven+tomcat一键构建部署

1背景 这是这种多人协同开发,自动构建,自动部署的方案。就不用自己打包,然后上传部署了,解放人力,便于管理。这里只是简单介绍各自软件的使用与集成,其实不论svn和maven还有很多实用的用法,sv...
  • wangqi880
  • wangqi880
  • 2017年04月14日 11:33
  • 3857

Jenkins+SVN+Maven+Shell 实现项目一键发布

转载自:http://jdkleo.iteye.com/blog/2159844 Jenkins+SVN+Maven+Shell 实现项目一键发布 一、前言 众所周知,Jenkins默...
  • u011186019
  • u011186019
  • 2016年06月23日 11:33
  • 1280

jenkins部署远程服务器(jenkins+svn+maven)

最近公司给了个任务,就是用jenkins做工程的部署工具,用jenkins自动化部署,这样测试人员就不用每次要等开发人员部署好了才能测试,用jenkins测试人员自己登陆上去就可以自己部署项目了。过程...
  • huangchao064
  • huangchao064
  • 2017年06月22日 16:50
  • 2933

jenkins+springBoot+maven+svn 部署一键打包发布

  • 2017年06月12日 14:17
  • 779KB
  • 下载

Jenkins + Maven + SVN + SSH持续集成【原创】

  • 2017年03月07日 10:52
  • 1.62MB
  • 下载

jenkins如何配置SVN

windows 下 SVN的安装以及使用下载地址:https://tortoisesvn.net/ 选择适合需要的版本,进行安装。 安装成功后,从windows SVN取code 操作步骤如...
  • liujingqiu
  • liujingqiu
  • 2017年03月23日 15:27
  • 8674

windows环境下使用jenkins自动部署发布项目(eclipse + svn + maven + tomcat + jenkins),注意是windows环境

本文重点讲解windows环境下jenkins中部署发布项目时的配置(也包括tomcat涉及到的一些配置),以及一些错误的解决办法,希望对您有帮助!!!...
  • weixin_37789212
  • weixin_37789212
  • 2017年08月23日 17:33
  • 369

Jenkins+Maven+SVN自动部署配置文档

基本 版本JenKins:2.19.1, Maven:3.1 环境要求: Java 7 256MB free memory 1GB+ free disk space Jenkins官网: https:...
  • xbynet
  • xbynet
  • 2016年10月10日 16:55
  • 13671

基于阿里云的Jenkins+Maven+SVN+Tomcat的持续集成(三)-jenkins集成

安装jenkins与集成jenkins
  • jesonjoke
  • jesonjoke
  • 2017年09月06日 08:52
  • 954

Jenkins+Maven+SVN快速搭建持续集成环境(转)

Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧。 假设我们目前已经有2个maven项目:entities(...
  • Truong
  • Truong
  • 2015年11月29日 00:00
  • 1240
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Jenkins+Maven+SVN快速搭建持续集成环境
举报原因:
原因补充:

(最多只允许输入30个字)