设为首页 收藏本站
查看: 1212|回复: 0

[经验分享] Jenkins+maven+svn+tomcat(1)

[复制链接]

尚未签到

发表于 2018-9-4 08:32:44 | 显示全部楼层 |阅读模式
  案例:最近打算为公司搭建Jenkins+maven+svn+tomcat持续集成环境。此博客先大致介绍Jenkins,以及各种安装配置方式,后续则持续介绍其具体组合svn,GItLab,maven,Ant,加其它插件的使用方法。
  
  Jenkins:
  1.1)简介:
  开源项目,一个可扩展的持续集成引擎。提供了一种易于使用的持续集成系统,能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。还做到持续编译和发布软件项目,这使得开发者很容易把他们的改动集成到项目中,让用户能更加便利的获取编译和测试版本等。
  1.2)作用:
  1.2.1)持续、自动地构建/测试软件项目。
  1.2.2) 监控一些定时执行的任务。
  1.3)特性:
  
  1.3.1)易于安装-只要把 jenkins.war 部署到 servlet 容器,不需要数据库支持。
  1.3.2)易于配置-所有配置都是通过其提供的 web 界面实现。
  1.3.3)集成 RSS/E-mail 通过 RSS 发布构建结果或当构建完成时通过 e-mail 通知。
  1.3.4)生成 JUnit/TestNG 测试报告。
  1.3.5)分布式构建支持 Jenkins 能够让多台计算机一起构建/测试。
  1.3.6)文件识别:Jenkins 能够跟踪哪次构建生成哪些 jar,哪次构建使用哪个版本的 jar 等。
  1.3.7)插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。
  1.4)常用组合
  1.4.1)Jenkins+maven(Ant)+svn+tomcat+其它插件
  1.4.2)Jenkins+maven(Ant)+GItLab+tomcat+其它插件
  ......
  1.5)安装(两种方式)
  1.5.1)yum方式安装
  官方文档:
  https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions
  
  1.5.1.1)安装java和tomcat(分别用的tomcat7和jdk1.7版本)
[root@node5 ~]# java1.7  -version  
java version "1.7.x"
  
Java(TM) SE Runtime Environment (build 1.7.x)
  
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)
  
[root@node5 ~]# cd /usr/local/tomcat-7.x/bin/
  
[root@node5 bin]# ./version.sh
  
Using CATALINA_BASE:   /usr/local/tomcat-7.x
  
Using CATALINA_HOME:   /usr/local/tomcat-7.x
  
Using CATALINA_TMPDIR: /usr/local/tomcat-7.x/temp
  
Using JRE_HOME:        /usr/local/jdk1.7.x
  
Using CLASSPATH:       /usr/local/tomcat-7.x/bin/bootstrap.jar:/usr/local/tomcat-7.x/bin/tomcat-juli.jar
  
Server version: Apache Tomcat/7.x
  
Server built:   May 19 2014 10:26:15
  
Server number:  7.x
  
OS Name:        Linux
  
OS Version:     2.6.32-504.el6.x86_64
  
Architecture:   amd64
  
JVM Version:    1.7x
  
JVM Vendor:     Oracle Corporation
  
[root@node5 bin]#
  1.5.1.2)yum安装jenkins
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo  
rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
  
yum install jenkins -y
DSC0000.png

  1.5.1.3)防止Jenkins内存溢出
vi  /etc/sysconfig/jenkins  
#JENKINS_USER="root"
  
#JENKINS_PORT="8080"
  
JENKINS_JAVA_OPTIONS="-Xms1024m -Xmx1024m -XX:PermSize=512M -XX:PermSize=1024M"
  1.5.1.4)开启Jenkins服务
   DSC0001.png
  1.5.1.5)访问:
  http://IP:8080/(根据自己定义的ip和端口)
  默认密码可以在日志看到,或者指定文件里。
/var/lib/jenkins/secrets/initialAdminPassword  
[root@node5 ~]# ll /var/log/jenkins/jenkins.log
  
-rw-r--r-- 1 jenkins jenkins 114057 8月   9 23:37 /var/log/jenkins/jenkins.log
  
[root@node5 ~]#
   DSC0002.png
  1.5.1.6)安装完成界面:
   DSC0003.png
  1.5.2)War包形式(推荐)
  1.5.2.1)官网https://jenkins.io/ (建议生产选择TLS稳定版)
DSC0004.png

  1.5.2.2)上传到站点下,重启tomcat(java  -jar jenkins.war也可以)
[root@node5 webapps]# pwd  
/usr/local/tomcat-7.x/webapps
  
[root@node5 webapps]# ll
  
总用量 68160
  
drwxr-xr-x 14 root root     4096 8月   8 13:05 docs
  
drwxr-xr-x  7 root root     4096 8月   8 13:05 examples
  
drwxr-xr-x  5 root root     4096 8月   8 13:05 host-manager
  
drwxr-xr-x 10 root root     4096 8月   8 16:58 jenkins
  
-rw-r--r--  1 root root 69770196 12月 21 2016 jenkins.war
  
drwxr-xr-x  5 root root     4096 8月   8 13:05 manager
  
drwxr-xr-x  3 root root     4096 8月   8 13:05 ROOT
  
[root@node5 webapps]# killall -9 java
  
[root@node5 webapps]# /etc/init.d/tomcat-7.x start
  
Using CATALINA_BASE:   /usr/local/tomcat-7.x
  
Using CATALINA_HOME:   /usr/local/tomcat-7.x
  
Using CATALINA_TMPDIR: /usr/local/tomcat-7.x/temp
  
Using JRE_HOME:        /usr/local/jdk1.7.x
  
Using CLASSPATH:       /usr/local/tomcat-7.x/bin/bootstrap.jar:/usr/local/tomcat-7.x/bin/tomcat-juli.jar
  
Tomcat started.
  
[root@node5 webapps]#
  1.5.3)访问:
  http://IP/jenkins
DSC0005.png

  1.5.3.1)根据提示找密码
[root@node5 .jenkins]# cd secrets  
[root@node5 secrets]# ls
  
filepath-filters.d    jenkins.model.Jenkins.crumbSalt         org.jenkinsci.main.modules.instance_identity.InstanceIdentity.KEY
  
hudson.util.Secret    jenkins.security.ApiTokenProperty.seed  slave-to-master-security-kill-switch
  
initialAdminPassword  master.key                              whitelisted-callables.d
  
[root@node5 secrets]# cat initialAdminPassword
  
58b779da51484504a8649de0aada616e
  
[root@node5 secrets]#
  1.5.3.2)根据提示安装插件(可根据建议,也可以自定义安装插件,最好先跳过插件,需要什么安装什么),这里我就按照建议的来了。
   DSC0006.png
  提示,会有个别插件不能按照,暂时跳过即可。建议自己要安装的插件
  Maven Project Plugin,Subversion Plugin,Checkstyle Plugin,Findbugs Plugin
  PMD Plugin,Warnings Plugin等。
  1.6)svn准备
[root@node3 ~]# ps aux|grep svn|grep -v grep  
root       1217  0.0  0.0 152864   760 ?        Ss   14:58   0:00 /usr/bin/svnserve -d -r /usr/local/svndata --listen-port 9000
  
[root@node3 ~]#
  1.7)maven安装配置
  1.7.1)简介
  http://maven.apache.org/
  Jenkins支持FreeStyle工程和Maven工程。
  maven是一个项目构建和管理的工具,提供了帮助管理 构建、文档、报告、依赖、scms、发布、分发的方法。可以方便的编译代码、进行依赖管理、管理二进制库等等。maven的好处在于可以将项目过程规范化、自动化、高效化以及强大的可扩展性,利用maven自身及其插件还可以获得代码检查报告、单元测试覆盖率、实现持续集成等等。
[root@node3 ~]# tar xf apache-maven-3.3.9-bin.tar.gz  
[root@node3 ~]# mv apache-maven-3.3.9 /usr/local/maven
  
[root@node5 ~]# cat /etc/profile.d/maven
  
export  MAVEN_HOME=/usr/local/maven/
  
export  PATH=$PATH:$MAVEN_HOME/bin
  
export  MAVEN_HOME
  
[root@node3 ~]# source  /etc/profile.d/maven
  
[root@node5 ~]# mvn -v
  
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
  
Maven home: /usr/local/maven
  
Java version: 1.7.x, vendor: Oracle Corporation
  
Java home: /usr/local/jdk1.7.x/jre
  
Default locale: zh_CN, platform encoding: UTF-8
  
OS name: "linux", version: "2.6.32-504.el6.x86_64", arch: "amd64", family: "unix"
  
[root@node5 ~]#
  到此,基本环境搭建完成,后续将介绍Jenkins配置和插件的整合使用。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-562224-1-1.html 上篇帖子: 在jenkins打开roboframework报告:Opening Robot Framework report failed 下篇帖子: Jenkins+maven+svn+tomcat2)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表