`
truelove12358
  • 浏览: 77699 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

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

 
阅读更多

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

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

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

第一步还是得安装

  1. <prename="code"class="plain">rpm-ivhjenkins-1.569-1.1.noarch.rpm
  2. #安装完成之后通过这个命令查看是否安装成功,如果有以下提示,代表安装成功
  3. [root@localhostftp]#servicejenkinsstatus
  4. jenkinsisstopped
  5. #启动jenkins
  6. [root@localhostftp]#servicejenkinsstart
  7. StartingJenkins[OK]


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

vi /etc/sysconfig/jenkins

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

注册

Jenkins

服务开机启动

#chkconfigjenkinson

注册

Jenkins

服务开机启动

#chkconfigjenkinson

注册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里面配置管理用户的信息,大家可以按照我的文件来也可以直接复制过去

  1. <?xmlversion='1.0'encoding='utf-8'?>
  2. <!--
  3. LicensedtotheApacheSoftwareFoundation(ASF)underoneormore
  4. contributorlicenseagreements.SeetheNOTICEfiledistributedwith
  5. thisworkforadditionalinformationregardingcopyrightownership.
  6. TheASFlicensesthisfiletoYouundertheApacheLicense,Version2.0
  7. (the"License");youmaynotusethisfileexceptincompliancewith
  8. theLicense.YoumayobtainacopyoftheLicenseat
  9. http://www.apache.org/licenses/LICENSE-2.0
  10. Unlessrequiredbyapplicablelaworagreedtoinwriting,software
  11. distributedundertheLicenseisdistributedonan"ASIS"BASIS,
  12. WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.
  13. SeetheLicenseforthespecificlanguagegoverningpermissionsand
  14. limitationsundertheLicense.
  15. -->
  16. <tomcat-users>
  17. <!--
  18. NOTE:Bydefault,nouserisincludedinthe"manager-gui"rolerequired
  19. tooperatethe"/manager/html"webapplication.Ifyouwishtousethisapp,
  20. youmustdefinesuchauser-theusernameandpasswordarearbitrary.
  21. -->
  22. <!--
  23. NOTE:Thesampleuserandroleentriesbelowarewrappedinacomment
  24. andthusareignoredwhenreadingthisfile.Donotforgettoremove
  25. <!....>thatsurroundsthem.
  26. -->
  27. <rolerolename="tomcat"/>
  28. <rolerolename="role1"/>
  29. <rolerolename="manager-gui"/>
  30. <rolerolename="manager-script"/>
  31. <rolerolename="manager-jmx"/>
  32. <rolerolename="manager"/>
  33. <rolerolename="manager-status"/>
  34. <userusername="tomcat"password="tomcat"roles="tomcat"/>
  35. <userusername="both"password="tomcat"roles="tomcat,role1"/>
  36. <userusername="role1"password="tomcat"roles="role1"/>
  37. <userusername="admin"password="admin"roles="manager,manager-gui,manager-script,manager-jmx,manager-status"/>
  38. </tomcat-users>

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

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

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

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


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

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

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


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

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

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

第一步还是得安装

  1. <prename="code"class="plain">rpm-ivhjenkins-1.569-1.1.noarch.rpm
  2. #安装完成之后通过这个命令查看是否安装成功,如果有以下提示,代表安装成功
  3. [root@localhostftp]#servicejenkinsstatus
  4. jenkinsisstopped
  5. #启动jenkins
  6. [root@localhostftp]#servicejenkinsstart
  7. StartingJenkins[OK]


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

vi /etc/sysconfig/jenkins

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

注册

Jenkins

服务开机启动

#chkconfigjenkinson

注册

Jenkins

服务开机启动

#chkconfigjenkinson

注册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里面配置管理用户的信息,大家可以按照我的文件来也可以直接复制过去

  1. <?xmlversion='1.0'encoding='utf-8'?>
  2. <!--
  3. LicensedtotheApacheSoftwareFoundation(ASF)underoneormore
  4. contributorlicenseagreements.SeetheNOTICEfiledistributedwith
  5. thisworkforadditionalinformationregardingcopyrightownership.
  6. TheASFlicensesthisfiletoYouundertheApacheLicense,Version2.0
  7. (the"License");youmaynotusethisfileexceptincompliancewith
  8. theLicense.YoumayobtainacopyoftheLicenseat
  9. http://www.apache.org/licenses/LICENSE-2.0
  10. Unlessrequiredbyapplicablelaworagreedtoinwriting,software
  11. distributedundertheLicenseisdistributedonan"ASIS"BASIS,
  12. WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.
  13. SeetheLicenseforthespecificlanguagegoverningpermissionsand
  14. limitationsundertheLicense.
  15. -->
  16. <tomcat-users>
  17. <!--
  18. NOTE:Bydefault,nouserisincludedinthe"manager-gui"rolerequired
  19. tooperatethe"/manager/html"webapplication.Ifyouwishtousethisapp,
  20. youmustdefinesuchauser-theusernameandpasswordarearbitrary.
  21. -->
  22. <!--
  23. NOTE:Thesampleuserandroleentriesbelowarewrappedinacomment
  24. andthusareignoredwhenreadingthisfile.Donotforgettoremove
  25. <!....>thatsurroundsthem.
  26. -->
  27. <rolerolename="tomcat"/>
  28. <rolerolename="role1"/>
  29. <rolerolename="manager-gui"/>
  30. <rolerolename="manager-script"/>
  31. <rolerolename="manager-jmx"/>
  32. <rolerolename="manager"/>
  33. <rolerolename="manager-status"/>
  34. <userusername="tomcat"password="tomcat"roles="tomcat"/>
  35. <userusername="both"password="tomcat"roles="tomcat,role1"/>
  36. <userusername="role1"password="tomcat"roles="role1"/>
  37. <userusername="admin"password="admin"roles="manager,manager-gui,manager-script,manager-jmx,manager-status"/>
  38. </tomcat-users>

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

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

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

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


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

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

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


分享到:
评论

相关推荐

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

    ### Jenkins+Maven+SVN快速搭建持续集成环境 #### 一、Jenkins与持续集成概念 持续集成(Continuous Integration, CI)是一种软件开发实践,开发者频繁地将代码提交到共享仓库,每次提交后,自动构建(包括编译、...

    Jenkins+Maven+SVN+Tomcat 持续集成环境快捷部署

    搭建Jenkins+Maven+SVN+Tomcat的持续集成环境,需要按照以下步骤: 1. 环境准备 - JDK1.8.0_131,版本不低于1.7,使用最新版本以获得最佳性能和最新特性。 - Apache Maven 3.3.9,不推荐使用3.5.0版本,以免出现...

    持续集成环境maven+nexus+jenkins+svn搭建

    "持续集成环境搭建" ...搭建一个完整的持续集成环境需要使用多种工具和技术,例如 Maven、Nexus、Jenkins 和 SVN 等。通过使用这些工具和技术,我们可以自动化构建、测试和部署软件,从而提高软件的质量和开发效率。

    Jenkins+Maven+Windows+svn+sonarqube持续集成平台搭建图文指南

    Jenkins+Maven+Windows+svn+sonarqube持续集成平台搭建图文指南

    Jenkins+Maven+SVN+Tomcat持续集成实战

    《Jenkins+Maven+SVN+Tomcat持续集成实战》 在现代软件开发中,持续集成(Continuous Integration,简称CI)已经成为提升效率、保障质量的重要手段。本文将详细讲解如何利用Jenkins、Maven、SVN和Tomcat等工具进行...

    Jenkins+Maven+SVN+Tomcat持续集成实战视频.zip

    目录 1、传统网站部署流程 2、主流网站部署流程及方法 3、Jenkins持续平台安装 4、Jenkins持续集成MAVEN讲解 5、Jenkins持续集成JOB工程设置 6、Jenkins持续集成网站构建实战...Jenkins+Maven+SVN+Tomcat持续集成实v1战

    jenkins + svn+maven持续集成

    【Jenkins + SVN + Maven 持续集成】 在软件开发过程中,持续集成(Continuous Integration,简称CI)是一种重要的实践,它可以确保代码的频繁合并,减少集成时的问题,并且能够快速发现并修复错误。Jenkins、SVN ...

    jenkins+svn+maven+java-配置+安装+部署(windows版)

    ### Jenkins + SVN + Maven + Java 自动化部署详解(Windows版) #### 一、Jenkins 安装与配置 **1. Jenkins 安装** - **下载安装**: 首先,从官方网址 (https://jenkins.io/download/) 下载最新的Jenkins安装包...

    Jenkins+Maven+SVN+Tomcat持续集成实战v2.pdf

    Jenkins、Maven、SVN和Tomcat是现代软件开发中常用的工具,它们可以组成一套完整的持续集成和部署系统。接下来,我将详细说明这些工具的安装、配置和使用知识。 首先,Jenkins是一个开源的持续集成工具,用于自动化...

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

    本文旨在介绍如何利用Jenkins、Maven、SVN以及SSH等工具构建一套完整的持续集成环境。通过这一过程,可以实现自动化构建、测试及部署,从而提高开发效率和软件质量。 #### 准备工作 1. **Jenkins服务器配置** - ...

    Jenkins + Maven + SVN + SSH持续集成实战手册

    本手册将详细讲解如何利用Jenkins、Maven、SVN和SSH来实现一个高效且可靠的持续集成环境。 首先,Jenkins是一个开源的持续集成服务器,它支持各种版本控制系统、构建工具和部署策略。通过Jenkins,我们可以设置自动...

    jenkins+maven+nexus+mantisBug

    【标题】"jenkins+maven+nexus+mantisBug"揭示了四个关键的IT技术领域,它们在...总之,这个集成环境利用Jenkins、Maven、Nexus和MantisBug,实现了一套完整的持续集成和缺陷管理流程,旨在提升软件开发的效率和质量。

    Centos+Jenkins+Maven+SVN的搭建.pdf

    本篇文章将详述如何在CentOS操作系统上搭建一套基于Jenkins的持续集成环境,该环境集成了Maven构建工具和Subversion(SVN)版本控制系统。以下是搭建步骤的详细说明: 首先,确保系统已经安装了Java Development ...

    全网最全Selenium3+Java+Maven+TestNG+ReportNG+SVN+Jenkins自动化测试环境搭建

    ### Selenium3+Java+Maven+TestNG+ReportNG+SVN+Jenkins自动化测试环境搭建 #### Java环境搭建 **一、安装JDK1.8** - **步骤**: 下载JDK安装包并按照向导指引进行安装,直至安装完成。 **二、配置JDK环境变量** ...

    jenkins+maven+svn+springboot实现一件打包发布

    ### Jenkins + Maven + SVN + SpringBoot 实现一键打包发布 #### 安装 Jenkins 1. **下载 Jenkins** 首先前往 Jenkins 官网下载 Jenkins,官网上提供了两个下载选项: - 如果用于公司环境,建议选择左侧的企业...

    Jenkins+Maven+svn+Tomcat入门文档

    Jenkins+Maven+svn+Tomcat入门文档,系统详细的讲述开发测试环境的环境搭建

Global site tag (gtag.js) - Google Analytics