Linux搭建Jenkins平台

来源:互联网 发布:小众电影 知乎 编辑:程序博客网 时间:2024/05/16 07:15

为了配合上一篇的ant+jenkins做持续集成,需要在linux环境下搭建一个jenkins平台。网上有很多安装的例子,我主要记录一下自己遇到的问题,真真的是特别惆怅的,每次我遇到的问题都格外多。

主要分为三块内容,具体如下:

*安装

*问题及解决,

一 安装jenkins

1 首先确认该机器已经安装jdk,确认方式:在linux机器上输入 java -version,若系统可识别java命令,则表示已安装jdk,如下

得到的1.7.0_79为java版本,需注意:有些版本的jenkins不能使用1.6的jdk

2 安装jenkins

A 离线安装:

① 下载jenkins.war 包。Jenkins官方地址:http://Jenkins-ci.org/ (最新war包的下载地址:http://mirrors.jenkins-ci.org/war/latest/jenkins.war)

② 下载一个tomcat容器在webapps中放入jenkins.war,不要解压。

③ 在cd /opt/soft/tomcat/webapps/ 中执行 java -jar jenkins.war

④ 查看日志是否有异常,访问http://ip:8080即可看到jenkins界面,jenkins安装成功。

B 在线安装

使用yum命令进行在线安装,使用service命令进行启动,具体操作如下:

复制代码
wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo   rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key           yum install jenkins                                     [root@bjdhj-120-215 run]# service jenkins startStarting Jenkins                                           [确定][root@bjdhj-120-215 run]# service jenkins statusjenkins (pid  23873) 正在运行...
复制代码

浏览器访问http://ip:8080 即可看到jenkins界面,jenkins安装成功

二 遇到的问题

问题1 在执行yum install jenkins时提示:user jenkins does not exist

解决:该机器上没有jenkins用户,需要使用adduser命令创建用户,adduser命令需要配合更改passwd等的权限位完成

复制代码
[root@esearch01 ~]# adduser jennkinsadduser: cannot open /etc/passwd       #是因为该文件加了权限位,不可写操作[root@esearch01 etc]# lsattr passwd    #进行确认----i--------e- passwd[root@esearch01 etc]# chattr -i passwd #去掉权限位[root@esearch01 etc]# lsattr passwd    #进行确认-------------e- passwd[root@esearch01 etc]# adduser jenkins  #即可创建成功jenkins用户
复制代码

问题2:修改jenkins的端口

解决:完成jenkins的在线安装后,查看/usr/lib/jenkins/jenkins.war;查看/etc/sysconfig/jenkins是jenkins的配置文件

修改jenkins文件的端口号:

vim /etc/sysconfig/jenkins 编辑该文件,修改如下两个端口

JENKINS_PORT="8001"

JENKINS_AJP_PORT="8009"

保存文件并退出,重启jenkins(service jenkins restart),在浏览器中访问http://ip:8001,打开jenkins页面。

问题3:jenkins的启动日志报错:

WARING:Could not intialize the host network interface on nullbecause of an error:101/udp

java.net.UnknownHostException:101/udp

原因:在linux执行hostname,得到101/udp。正常应该是通过hostname获取对应的机器ip,但是明显101/udp在解析时不通过,所以无法定位ip,导致错误。

解决:更新hostname。执行语句为hostname bjdhj-120-215.58os.org(自己定义一个合理的hostname名称),可用其他机器ping改hostname,看是否能正确得到对应的ip。

再次启动jenkins.war,日志正常,可访问web页面。

问题4:不能正确stop jenkins

[root@bjdhj-120-215 ~]# service jenkins stop
Shutting down Jenkins [失败]

[root@bjdhj-120-215 ~]# service jenkins status
jenkins is stop,pid is exist

解决1:java版本冲突,确认下是否同时存在java1.6 java1.7或者其他,卸载,只保留一个

解决2:重新安装jenkins,即再执行一遍yum install jenkins。

解决3:我是重新安装了好了,但我总觉得有其他地方可以解决这个问题,所以先留着坑。


Reference:http://www.cnblogs.com/zhaoxd07/p/4956637.html

0 0
原创粉丝点击