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+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
  • 8991

Jenkins+maven+svn+tomcat操作手册(三)

上接:Jenkins+maven+svn+tomcat操作手册(二)部署完成之后,我们来进行测试1.5 测试注意:在构建之前要启动tomcat,因为jenkins需要通过网络访问tomcat,然后把w...

jenkins+maven+svn实现简单的一键发布

前言 在安装之前,我想说明一下本文的目的,jenkins的一款持续集成工具,    它可以做的事情很多,其中一个主要的功能就是简化部署流程        回想一下我们的发布流程: 1.本地把项目打包 ...

jenkins+maven+svn实现简单的一键发布

前言      在安装之前,我想说明一下本文的目的,jenkins的一款持续集成工具,      它可以做的事情很多,其中一个主要的功能就是简化部署流程         回想一下我们的发布...

基于CentOS+Jenkins+Maven+SVN+Tomcat+Java的自动化持续集成

1. 准备工作 CentOS 7 Jenkins 2.7 Maven 3.3.9 SVN Tomcat 7 Java 1.7 2. 安装Jenkins2.1 安装sudo wget -O /etc/y...
  • lyh1234
  • lyh1234
  • 2016年06月01日 14:23
  • 1941

实现代码自动打包与发布(Jenkins+Maven+Svn)

前言        很多开发人员都知道,在一些互联企业初期大多数都是采用手工打包上传与发布的方式进行代码发布,常见就是利用打包工具手工打包,上传到WEB服务器,备份原代码文件,发布新的代码,重启服务和...

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

安装jenkins与集成jenkins

利用jenkins/svn/maven搭建持续集成环境

持续集成作为敏捷开发必不可少的工具,利用编译、发布、自动化测试来保证项目的质量和进度,现在来谈谈如何利用jenkins工具来进行持续集成,步骤如下: 一、下载jenkins.war 二、下载tom...

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

Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧。 假设我们目前已经有2个maven项目:entitie...

Jenkins安装及配置持续集成(Maven+SVN+Tomcat+Centos6.5)

Jenkins介绍 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:...
  • zh520qx
  • zh520qx
  • 2017年02月18日 18:12
  • 1103
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Jenkins+Maven+SVN快速搭建持续集成环境
举报原因:
原因补充:

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