首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jenkins实战系列

jenkins实战系列

作者头像
互联网老辛
发布2018-12-10 14:38:48
1.1K0
发布2018-12-10 14:38:48
举报
文章被收录于专栏:互联网老辛互联网老辛

Jenkins 是一个可扩展的持续集成引擎。

主要用于:

  • 持续、自动地构建/测试软件项目。
  • 监控一些定时执行的任务。 Jenkins拥有的特性包括:
  • 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。
  • 易于配置-所有配置都是通过其提供的web界面实现。
  • 集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知。
  • 生成JUnit/TestNG测试报告。
  • 分布式构建支持Jenkins能够让多台计算机一起构建/测试。
  • 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
  • 插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。

jenkins 官方网址:https://jenkins.io/

本文主要介绍了在linux 下如何部署jenkins.以及通过jenkins 如何发布php.以及java 程序,利用jenkins 来实现邮件告警及时了解项目发布过程中产生的问题。

一.jenkins 部署安装:

1.Linux部署Jenkins两种方法的介绍
方法1:WAR包

步骤简介:

wget在官方下载jenkins.war的包到tomcat下
修改tomcat的server.xml配置,重启tomcat
调整防火墙规则,允许端口访问
浏览器访问:http://x.x.x.x:port
方法2:YUM安装

步骤简介:

添加官方的rpm包源,进行yum安装
编辑jenkins的/etc/init.d/jenkins程序文件,添加java路径
编辑jenkins的/etc/sysconfig/jenkins配置文件,修改端口、系统运行账户
编辑/etc/profiles文件添加jenkins的环境变量
启动jenkins服务service jenkins start
浏览器访问:http://x.x.x.x:port
二、两种安装方法的对比

WAR包安装

优点:

只有一个war包,轻量级部署
配置过程简单,无需额外配置
对于已经部署好tomcat+jdk环境的Server,可以在10分钟内就搭建好Jenkins平台,适用于快速部署和使用;
适合新手,或者对Linux不太熟的人员
缺点:

因为是官方直接打包好的.war包,修改配置容易出现报错
运行不稳定,增加插件、修改权限等,很容易崩溃
重启jenkins服务不太方便(java -jar /xx/xx/jenkins.war --httpPort=8080)
YUM安装

优点:

对于熟悉Linux服务配置的人员来说,轻车熟路的配置流程
可以根据Server环境,定制化的修改jenkins配置文件
可以很方便的查看服务运行状态(state)、日志、排错、重启服务
适用于Linux老司机
缺点:

配置的过程稍复杂,要修改的文件和参数
反复查看日志中的ERROR,根据模糊的错误信息,调整环境和配置
对于Linux新手来说,配置起来有点难,Troubleshouting有点懵
2.利用tomcat来部署jenkins
部署tomcat
(1)安装jdk
这里的jdk 使用的是jdk-8u77-linux-x64.rpm
rpm -ivh jdk-8u77-linux-x64.rpm

(2)环境变量
export JAVA_HOME=/usr/java/jdk1.8.0_77/                     # JAVA_HOME变两个路径
export JAVA_BIN=/usr/java/jdk1.8.0_77/bin
export PATH=${JAVA_HOME}bin:$PATH   # 环境变量
[root@caosm03 caosm]# java -version   # 查看版本
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)
(3)部署tomcat
这里使用的tomcat  apache-tomcat-8.0.30.tar.gz
[root@caosm03]# tar -zxvf  apache-tomcat-8.0.30.tar.gz -C /usr/local
[root@caosm03 local]# mv apache-tomcat-8.0.30  tomcat
[root@caosm03 local]# cd /usr/local/tomcat/bin/
[root@caosm03 bin]# ./startup.sh
Using CATALINA_BASE:   /usr/local/src/tomcat
[2017/12/13 15:55:02] Using CATALINA_HOME:   /usr/local/tomcat
[2017/12/13 15:55:02] Using CATALINA_TMPDIR: /usr/local/tomcat/temp
[2017/12/13 15:55:02] Using JRE_HOME:        /usr/java/jdk-1.8.0.77/
[2017/12/13 15:55:02] Using CLASSPATH:       /usr/local/src/tomcat/bin/bootstrap.jar:/usr/local/src/tomcat/bin/tomcat-juli.jar


启动报错:The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path

解决方案:
<Server port="8005" shutdown="SHUTDOWN">
  <!--Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> -->
把这一句注释掉 不影响使用,解决这个问题非常蛋疼!!!
对端口进行修改 我这里改成了8090
对server.xml 进行修改
  <Connector port="8090" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
 修改端口后要进行重启tomcat


启动进行测试:http://192.168.24.130:8090  启动正常
(4)准备安装包,安装jenkins
这里使用的安装是从官网下载的war 包 https://jenkins.io/
把安装包放到webapp下面
[root@caosm03 webapps]# ls
docs  examples  host-manager  jenkins  jenkins.war  manager  ROOT
[root@caosm03 webapps]#root@caosm03 webapps]#java -jar jenkins.war --httpPort=8090 &
 进行启动  指定端口
直接访问即可!
http://192.168.24.130:8090
默认用户admin 
密码:[root@caosm03 ~]# cat /root/.jenkins/secrets/initialAdminPassword 
fb0cb152dc454586a217c46710ecc242
安装中文插件
https://updates.jenkins.io/download/plugins/locale/1.2
在/jenkins/pluginManager/advanced/ 上传插件,点击上传 ,重新刷新,Jenkins 恢复中文界面
http://updates.jenkins-ci.org/download/plugins/
安装插件 可选插件报错
这里需要选择高级
升级站点: http://updates.jenkins-ci.org/update-center.json  立即获取
重新启动tomcat

相关配置

# Jenkins安装目录
/var/lib/jenkins
# Jenkins配置文件地址
cat /etc/sysconfig/jenkins
# 三个比较重要的配置
JENKINS_HOME是Jenkins的主目录,Jenkins工作的目录都放在这里,Jenkins储存文件的地址,Jenkins的插件,生成的文件都在这个目录下。
JENKINS_USER是Jenkins的用户,拥有$JENKINS_HOME和/var/log/jenkins的权限。
JENKINS_PORTJENKINS_PORT是Jenkins的端口,默认端口是8080。

报错解决如下:

jenkins报错:Problem accessing /jenkins/. Reason: HTTP ERROR 404

这是一个Jenkins的Bug。临时解决方法是:在浏览器中手工输入:http://<ip>:<port>
不要访问"/jenkins"这个路径。

jenkins 报错: office This jenkins instance appears to be offline.

[root@caosm98 ~]# cat /var/lib/jenkins/hudson.model.UpdateCenter.xml
<?xml version='1.0' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>http://updates.jenkins.io/update-center.json</url>
  </site>
https 改成http
需要重启jenkins

下一节 介绍 php代码发布

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据架构师专家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.jenkins 部署安装:
    • 1.Linux部署Jenkins两种方法的介绍
      • 2.利用tomcat来部署jenkins
      相关产品与服务
      持续集成
      CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档