Linux安装Jenkins
安装之前请确保你已经安装好JDK,Tomcat,Maven。
1导入Jenkins key,安装
[root@iZ94zsv4mnfZ ~]# wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
[root@iZ94zsv4mnfZ ~]# rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
[root@iZ94zsv4mnfZ ~]# yum install jenkins
输入y即可
2修改配置
[root@iZ94zsv4mnfZ ~]# vim /etc/sysconfig/jenkins
修改如下配置:
#避免执行脚本时权限不足
JENKINS_USER="root"
#默认为8080 与tomcat的端口冲突了这里我修改为8888,如你的8080端口未被占用,可以不改
JENKINS_PORT="8888"
JENKINS_USER我这里设置了root需要为root赋予访问jenkins的权限<br>
[root@iZ94zsv4mnfZ ~]# chown -R root /var/log/jenkins
[root@iZ94zsv4mnfZ ~]# chgrp -R root /var/log/jenkins
[root@iZ94zsv4mnfZ ~]# chown -R root /var/lib/jenkins
[root@iZ94zsv4mnfZ ~]# chgrp -R root /var/lib/jenkins
[root@iZ94zsv4mnfZ ~]# chown -R root /var/cache/jenkins
[root@iZ94zsv4mnfZ ~]# chgrp -R root /var/cache/jenkins
再修改另一处配置
[root@iZ94zsv4mnfZ ~]# vim /etc/init.d/jenkins
找到
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.6.0/bin/java
/usr/lib/jvm/jre-1.6.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/bin/java
在/usr/bin/java上面添加一行:/usr/java/jdk1.8.0_102/bin/java 前面是你的java安装路径。
最终如下
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.6.0/bin/java
/usr/lib/jvm/jre-1.6.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/java/jdk1.8.0_102/bin/java
/usr/bin/java
3启动
[root@iZ94zsv4mnfZ ~]# service jenkins start
启动完成后即可登录 http://IP:8888/ 访问Jenkins
第一次登录Jenkins 会要求解锁
到指定路径中复制密码输入。
[root@iZ94zsv4mnfZ ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
957fef857878401497edeed960c01b0d
输入上面的字符串
输入完成后会提示安装自定义插件还是推荐插件,此处我们选择推荐插件:
然后等待安装完成后
安装maven插件
依次进入 系统管理->管理插件 点击可选插件,搜索 Maven Integration plugin 勾选上 点击直接安装
4配置环境
进入 系统管理 -> Global Tool Configuration
JDK
MAVEN
点击save
再进入 系统管理 -> 管理节点
点击设置图标
5创建job
进入主页点击新建,输入item name,点击构建一个maven项目
选择源码管理
添加svn地址,账号和密码
选择build
构建后操作
保存部署脚本:
#!/bin/bash #Tomcat根目录 #注意此处需要修改成自己的tomcat路径 TOMCAT_HOME="/usr/local/tomcat7" #端口 #注意此处需要修改成自己的tomcat端口 TOMCAT_PORT=8080 #TOMCAT_PID用于检测Tomcat是否在运行 TOMCAT_PID=`lsof -n -P -t -i :${TOMCAT_PORT}` #如果Tomcat还在运行 if [ -n "${TOMCAT_PID}" ]; then #关闭Tomcat #注意此处。如果tomcat没有注册为服务使用下面的方式 #${TOMCAT_HOME}/bin/shutdown.sh service tomcat7 stop #循环检查Tomcat是否关闭完成 while [ -n "${TOMCAT_PID}" ] do #等待1秒 sleep 1 #获取8080端口运行进程PID,如果PID为空则表示Tomcat已经关闭 TOMCAT_PID=`lsof -n -P -t -i :${TOMCAT_PORT}` echo "正在关闭Tomcat["${TOMCAT_PORT}"]..." done echo "成功关闭Tomcat." fi #注意此处:zwp-web为我的打包的包名 warPath="${TOMCAT_HOME}/webapps/zwp-web/" warFile="${TOMCAT_HOME}/webapps/zwp-web.war" #如果文件或者文件夹存在则删除 deleteWhenExist(){ if [ -e $1 ]; then rm -rf $1 fi } deleteWhenExist ${warPath} deleteWhenExist ${warFile} #注意此处:zwp/zwp-web/target/zwp-web.war 需要修改你自己对应的路径 #拷贝新编译的包到Tomcat cp /var/lib/jenkins/workspace/zwp/zwp-web/target/zwp-web.war ${TOMCAT_HOME}/webapps/ #注意此处。如果tomcat没有注册为服务使用下面的方式 #${TOMCAT_HOME}/bin/startup.sh service tomcat7 start echo "正在启动Tomcat["${TOMCAT_PORT}"]..." #检测Tomcat是否启动完成 while [ -z "${TOMCAT_PID}" ] do sleep 1 #echo "TOMCAT_PID["${TOMCAT_PID}"]" TOMCAT_PID=`lsof -n -P -t -i :${TOMCAT_PORT}` echo "正在启动Tomcat["${TOMCAT_PORT}"]..." done echo "成功启动Tomcat."
进入主页。
点击zwp项目
点击立即构建
查看控制台输出
访问我们部署的项目
http://ip:8080/zwp-web/
注意:部署脚本中有些路径需要修改你自己对应。