一步一步搭建Jenkins环境
在公司使用 Jenkins 软件已经有一段时间了,走了很多弯路,但也积累了一些经验,可以和大家分享一下。
我们来一起搭建Jenkins环境。首选你需要安装好JRE/JDK和Tomcat。由于这不是本文的重点,所以关于其安装过程就跳过不谈。
我实验用的服务器操作系统为64位版本的CentOS 5.4,安装JDK 版本为 64位的 1.6.0;安装Tomcat版本为 7.0.14。
题外话,为了解决可能出现的 OutOfMemoryError: PermGen space 问题,需要修改一下$TOMCAT_HOME/bin/catalina.sh 文件,添加一句
JAVA_OPTS="-Xms512m -Xmx768m -XX:MaxNewSize=256m -XX:MaxPermSize=128m"
在Jenkins 官方网站(http://jenkins-ci.org/)下载最新版本war包。拷贝到 $TOMCAT_HOME/webapps 下(不用解压),删除 webapps 下其他目录(当然也可以不用Tomcat直接启动Jenkins,因为他已经内嵌了Jetty)。
现在我们创建一个用于存放所有Jenkins数据的目录,比如 /jenkins。添加环境变量 JENKINS_HOME 到 /etc/profile 中指向这个路径。
export JENKINS_HOME=/jenkins
现在我们可以启动 $TOMCAT_HOME/bin/startup.sh 来启动Jenkins了,但这样每次启动太麻烦,我们把它做成一个服务来启动。
在 /etc/init.d/ 下创建一个 jenkins 文件
# vi /etc/init.d/jenkins
内容如下,如果你希望用指定用户启动,请修改 JENKINS_USER=root 的值,但要记得更改 /jenkins 以及Tomcat 目录的访问权限。另外其他环境变量例如 JAVA_HOME 和 TOMCAT_HOME 要根据你实际JDK和Tomcat的安装目录修改。
#!/bin/sh
#
# Startup script for the Jenkins Continuous Integration server
# (via Jakarta Tomcat Java Servlets and JSP server)
#
# chkconfig: - 85 15
# description: Jakarta Tomcat Java Servlets and JSP server
# processname: tomcat
# pidfile: /var/run/tomcat.pid #!/bin/sh
#
# Startup script for the Jenkins Continuous Integration server
# (via Jakarta Tomcat Java Servlets and JSP server)
#
# chkconfig: - 85 15
# description: Jakarta Tomcat Java Servlets and JSP server
# processname: tomcat
# pidfile: /var/run/tomcat.pid # Set Tomcat environment.
JENKINS_USER=root
LOCKFILE=/var/lock/jenkins
export PATH=/usr/local/bin:$PATH
export HOME=/jenkins
export JAVA_HOME=/usr/local/jdk1.6.0_25
export JENKINS_BASEDIR=/jenkins
export TOMCAT_HOME=/usr/local/tomcat-7.0.14
export CATALINA_PID=$JENKINS_BASEDIR/jenkins-tomcat.pid
export CATALINA_OPTS="-DJENKINS_HOME=$JENKINS_BASEDIR/jenkins-home -Xmx512m -Djava.awt.headless=true" [ -f $TOMCAT_HOME/bin/catalina.sh ] || exit 0 export PATH=$PATH:/usr/bin:/usr/local/bin # See how we were called.
case "$1" in
start)
# Start daemon.
echo -n "Starting Tomcat: "
su -p -s /bin/sh $JENKINS_USER -c "$TOMCAT_HOME/bin/catalina.sh start"
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch $LOCKFILE
;;
stop)
# Stop daemons.
echo -n "Shutting down Tomcat: "
su -p -s /bin/sh $JENKINS_USER -c "$TOMCAT_HOME/bin/catalina.sh stop"
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f $LOCKFILE
;;
restart)
$0 stop
$0 start
;;
condrestart)
[ -e $LOCKFILE ] && $0 restart
;;
status)
status tomcat
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
esac exit 0
安装如下命令将Jenkins做成服务启动(以后启动和停止Jenkins也使用 service 命令)。
# chmod a+x /etc/init.d/jenkins
# chkconfig jenkins on
# service jenkins start
现在访问这台服务器 http://172.16.12.80:8080/jenkins/ 可以看到 Jenkins 已经启动了。

我们打算在这台服务器上装个 Nginx 做一下反向代理,为了方便,我选择使用RPM包安装的方式:
# wget http://nginx.org/packages/rhel/5/x86_64/RPMS/nginx-1.0.9-1.el5.ngx.x86_64.rpm
# rpm -ivh nginx-1.0.9-1.el5.ngx.x86_64.rpm
新建一个配置文件 /etc/nginx/conf.d/jenkins.conf 内容如下(注释掉的两行是打印日志用的,一般情况下不用打开):
server {
listen 80;
server_name ci.abc.com;
#access_log /var/log/jenkins_access_log main;
#error_log /var/log/jenkins_error_log debug_http;
client_max_body_size 60M;
client_body_buffer_size 512k;
location / {
proxy_pass http://localhost:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
现在启动 Nginx
# service nginx start
我们先修改一下本机的 hosts 文件(C:\Windows\System32\drivers\etc\hosts)添加:
172.16.12.80 ci.abc.com
这次我们在浏览器里输入 http://ci.abc.com/jenkins 可以看到页面了!

到这里基本的Jenkins环境已经搭建好了
一步一步搭建Jenkins环境的更多相关文章
- 基于Centos搭建Jenkins 环境搭建
系统要求: CentOS 7.2 64 位操作系统 安装 Jenkins Jenkins 简介 Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提 ...
- 自动化测试全套流程(一)-搭建Jenkins环境
前提 既然要做自动化测试,那我们就做得彻底一些,将整套系统部署在Linux服务器上,在搭建Jenkins环境之前,我已经通过VirtualBox安装了一个CentOS的服务器,搭建Jenkins是基于 ...
- docker中搭建jenkins环境
想在docker中搭建一个jenkins环境.开始的时候我想在先pull centos,然后在里面自己搭建环境,搭建后的环境可以运行,但是不知道挂载哪的数据,这也是我不熟悉jenkins的原因. 同事 ...
- 搭建jenkins环境(linux操作系统)
一.虚拟机安装 1) Virtualbox安装 2) 新建镜像(将已有镜像导入) 3) 开通本地远程访问虚拟机的权限 3.1 通过本地的mac地址设置本地连接固定的ip地址.子网掩码.默认网关 ...
- Windows系统下搭建Jenkins环境
1. 安装JDK JDK下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.ht ...
- 使用tomcat搭建Jenkins环境(centos7.3)
1.从官网下载最新版本的tomcat下载地址:https://tomcat.apache.org/2.Jenkins 官方网站下载最新版本war包Jenkins官网地址:http://jenkins- ...
- 基于Centos 搭建Jenkins环境
⒈简介 Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. ⒉Java安装 首先我们需要准备 ...
- 持续集成基础-Jenkins(二)-搭建Jenkins环境和配置第一个Job
安装方式一(直接启动): 1.下载最新的版本(一个 WAR 文件).Jenkins官方网址: http://Jenkins-ci.org/ 2.运行 java -jar jenkins.war(需要运 ...
- CentOS7系统下搭建Jenkins环境
1. 安装JDK yum -y install java 2.安装Ant 添加JPackage源 yum -y install wget wget http://www.jpackage.org/jp ...
随机推荐
- 新冲刺Sprint3(第二天)
一.Sprint介绍 更新商品图片功能已经完成,准备实现浏览商家相关信息功能和更新商品价格.商品描述功能. 二.Sprint周期 看板: 燃尽图:
- 神奇的盒模型(BFC)
上一篇我提到每一个元素都有自己的display属性,其属性值可以改变.其改变的方式,可以利用神奇的css盒模型(BFC). 盒模型,是css可视化格式化系统的基础,可以用于元素定位和网页布局.一个盒模 ...
- JS eval() 特殊用法
最近项目有 有个模块 有若干功能菜单,这些菜单查询部分都是一样的,所以就像提取一个通用的查询页面然后使用$('#ele').load('../**.aspx #searchID', {}, funct ...
- iOS9适配中的各种问题
1.http在ios9上不能在使用.需要进行配置. the resource could not be loaded because the app transport security policy ...
- ipod中,写计时器倒计时界面倒计时没有更改
innerText 改为textContent. IE.Safari.Opera和Chrome支持innerText属性.Firefox虽然不支持innerText,但支持作用类似的textConte ...
- js中的this指针(三)
当一个函数并非一个对象的忏悔时,它会被当作一个函数来调用. 此时,函数中的 this 指针被绑定到了全局对象. 后果:方法不能利用内部函数来帮助工作,由于 this 被绑定了错误的值,将无法共享该方法 ...
- 036. asp.netWeb用户控件之五使用用户控件实现分页数据导航
UserDataPager.ascx用户控件代码: <%@ Control Language="C#" AutoEventWireup="true" Co ...
- Node.js知识点
1. 入口文件app.js里的路由,按顺序执行: 2.
- 【C】 03 - 数据类型
程序说到底就是对数据的处理,所以首先要弄清楚需要处理哪些数据,计算机如何存储这些数据.C语言根据需要,抽象出了一些基本数据类型和衍生数据类型.这些可以满足大部分需求,更复杂的抽象数据类型亦可通过它们来 ...
- CentOS 7 做服务器 CentOS 5 做客服机 搭建Apache+php+mysql网页
1:在CentOS 7搭建yum源和php.Apache 安装 yum install php-mysql -y 文件 重启httpd服务:systemctl restart httpd.ser ...