Jenkins是一个非常出色的持续集成服务器,本文主要介绍在CentOS系统中Jenkins的基本安装配置方法,供参考。
一. 软件包:
1. 下载apache-maven-2.2.1-bin.tar
http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-2.2.1-bin.tar.gz
2. 下载jenkins:http://mirrors.jenkins-ci.org/war/ 列出了jenkins的所有release版本,请选择下载
二. 安装
1.安装jdk
# chmod 755 jdk-8u51-linux-x64.tar.gz # tar zxvf jdk-8u51-linux-x64.tar.gz -C /app/zpy/ # chown -R root.root jdk1.8.0_51/ # vim /etc/profile JAVA_HOME=/app/zpy/jdk1.8.0_51 JAVA_BIN=/app/zpy/jdk1.8.0_51/bin PATH=$PATH:$JAVA_BIN: CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_HOME JAVA_BIN PATH CLASSPATH
2.安装tomcat
# tar zxvf apache-tomcat-6.0.41.tar.gz -C /app/zpy/ # mv apache-tomcat-6.0.41/ tomcat_jenkins 修改tomcat配置文件 # vim tomcat_jenkins/conf/server.xml 修改8080端口的Connector节点,增加如下配置 URIEncoding="UTF-8"
3.安装maven
1、解压
# tar -zvxf apache-maven-2.2.1-bin.tar.gz
2、移动到其他目录
# mv apache-maven-3.3.9/ maven
3、配置环境变量
# vim /etc/profile SVN_HOME=/app/zpy/subversion/bin GIT_HOME=/app/zpy/git GIT_BIN=/app/zpy/git/bin MAVEN_HOME=/app/zpy/maven JENKINS_HOME=/app/zpy/tomcat_jenkins/webapps/jenkins JAVA_HOME=/app/zpy/jdk1.8.0_51 JAVA_BIN=/app/zpy/jdk1.8.0_51/bin PATH=$PATH:$JAVA_BIN:$MAVEN_HOME/bin:$GIT_BIN:$SVN_HOME CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export MAVEN_HOME JENKINS_HOME JAVA_HOME JAVA_BIN PATH CLASSPATH # . /etc/profile
4、 验证是否安装成功
# mvn -v Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00) Maven home: /app/zpy/maven Java version: 1.8.0_51, vendor: Oracle Corporation Java home: /app/zpy/jdk1.8.0_51/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"
5、配置maven
编辑maven的配置文件
# cd maven/conf # vi settings.xml
修改配置文件示例如下:
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository>/data/jenkins</localRepository> <servers> <server> <username>admin</username> <password>password</password> </server> </servers> <mirrors> <mirror> <!-- This sends everything else to /public --> <id>nexus</id> <mirrorOf>central</mirrorOf> <url>http://10.0.70.242:8081/nexus/content/repositories/public</url> </mirror> </mirrors> <profiles> <profile> <id>nexus</id> <!-- Enable snapshots for the built in central repo to direct --> <!-- all requests to nexus via the mirror --> <repositories> <repository> <id>central</id> <url>http://10.0.70.242:8081/nexus/content/repositories/public</url> <releases> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://192.169.10.109:8081/nexus/content/repositories/public</url> <releases> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> </pluginRepository> </pluginRepositories> </profile> </profiles> <activeProfiles> <!-- make the profile active all the time --> <activeProfile>nexus</activeProfile> </activeProfiles> <pluginGroups> <!-- define the sonatype plugin group, so the nexus plugins will work without typing the groupId --> <pluginGroup>org.sonatype.plugins</pluginGroup> </pluginGroups> </settings>
其中localRepository节点表示私服中下载的jar包存放路径,根据实际存放的路径修改。
所有url节点中包含的地址:http://192.169.10.109:8081/nexus/content/repositories/public,表示nexus私服的地址,请根据实际的地址修改。由研发提供,没有的话,使用默认的setting.xml配置文件,走公有的库,构建任务时下载会慢一些。
username、password节点表示登录nexus私服的用户名及密码。
4、安装jenkins
1、复制到tomcat webapps目录
# cp jenkins.war /app/zpy/tomcat_jenkins/webapps/
2、配置环境变量
# vim /etc/profile SVN_HOME=/app/zpy/subversion/bin GIT_HOME=/app/zpy/git GIT_BIN=/app/zpy/git/bin MAVEN_HOME=/app/zpy/maven JENKINS_HOME=/app/zpy/tomcat_jenkins/webapps/jenkins JAVA_HOME=/app/zpy/jdk1.8.0_51 JAVA_BIN=/app/zpy/jdk1.8.0_51/bin PATH=$PATH:$JAVA_BIN:$MAVEN_HOME/bin:$GIT_BIN:$SVN_HOME CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export MAVEN_HOME JENKINS_HOME JAVA_HOME JAVA_BIN PATH CLASSPATH # . /etc/profile
3、启动tomcat,使用http://localhost:8080/jenkins访问jenkins
4、输入/app/zpy/tomcat_jenkins/webapps/jenkins/secrets/initialAdminPassword中的密码
5、安装默认安装
6、默认插件安装完成,继续。(有些插件安装失败,也可继续)
7、不填内容,选择continue as admin(后面进行用户管理)
开始使用!
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1、创建用户
系统管理—管理用户—填入用户名、密码
设置/修改密码: 系统管理—管理用户—选择指定的用户—设置—到最下面修改密码
2、插件配置
查看已安装的
系统管理—管理插件–高级—浏览—上传
3、新建任务
每个任务为部署文件夹或压缩包
首先创建一个imp-share的任务。之后部署的应用需要依赖于这个imp-share(都由研发提供,上传至svn)
需要配置的主要有三个方面:svn maven deploy
I. svn配置,版本库地址、用户名和密码
II. (注意Global Tool Configuration中已配置maven)
III. 完成后点击立即构建。至此依赖包构建完成。
4、新建应用任务
I. svn配置,版本库地址、用户名和密码
注意去掉勾选,如果选上,svn如果更新就自动发包。
II. (注意Global Tool Configuration中已配置maven)
完成点击立即构建
III. 自动远程部署到tomcat
接下来要完成自动构建war包后,将这些war包上传到远程linus的tomcat的webapps目录,更新项目的war包,并重启tomcat服务。
安装插件
到https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin下载hpi到本地
系统管理–> 管理插件–> 高级–> 上传.hpi插件
配置ssh内容:
系统管理–> 系统设置–> publish over ssh 进行配置
点击高级
注释:
如果没有做ssh等效性,Passphrase、path to key、key处不需要填写。
Disable exec 是禁止执行命令
SSH Server Name随便设置一个项目名
Hostname 是tomcat服务器的地址
username 是系统的用户名
Remote Directory 是登录到的路径,此后作为根路径,后面的配置依据于这个路径
勾选Use password authentication,or use a different key
Passphrase/Password 填写系统用户的密码
进行任务配置
配置imp-im-web任务
构建够操作–> Sned build artifacts over SSH
注释:
SSH Server
Name 为之前ssh配置的项目名称
Transfers
Source files 是war包的位置。默认根路径为/app/zpy/tomcat_jenkins/webapps/jenkins/workspace/imp-im-web所以只从target填写即可
Remove prefix 去掉的路径。如果不去掉,传到tomcat上的包路径会加上目录target比如Remote directory设置为/tmp则拷贝过去后成为/tmp/target/imp-im.war
Remote directory 拷贝到tomcat上的路径,存放war包
Exec command 拷贝war包后 要执行的操作。
deploy.sh 脚本的内容如下:
#!/bin/sh #defined source /etc/profile TOMCAT_HOME="/app/zpy/tomcat" ID=`ps -ef | grep java | grep tomcat|awk '{print $2}'` echo $ID echo "kill tomcat" kill -9 $ID echo "remover war file" cd "$TOMCAT_HOME"/webapps rm -rf imp-im rm -rf imp-im.war echo "copy war to webapp" cd /tmp mv imp-im.war "$TOMCAT_HOME"/webapps cd "$TOMCAT_HOME"/bin echo "start tomcat" ./startup.sh
至此imp-im-web任务配置完成,点击立即构建。成功会显示
备注:
对于svn上存放的不是源码,是编译完成的war包的情况。
新建任务,选择自由风格
imp-im.war在imp-im-web-test/target下
选择Send files or execute commands over SSH after the build runs
点击立即构建,完成!!!
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/54702.html