cd /usr/local/src
wget http://ftp.tsukuba.wide.ad.jp/software/jenkins/war/1.642/jenkins.war
wget http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-x64.rpm?AuthParam=1450231240_a268c960892022b130dab65f70029cf2
下载完需要将文件名称修改为XXX.rpm结尾的文件才可安装例如JDK8.rpm
wget http://apache.fayea.com/tomcat/tomcat-7/v7.0.67/bin/apache-tomcat-7.0.67.tar.gz
yum install -y git
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
wget http://120.198.244.48:9999/mirror.bit.edu.cn/apache//ant/binaries/apache-ant-1.9.6-bin.tar.gz
rpm -ivh JDK8.rpm #安装rpm包
java -version #查看安装成功后的java版本
vim /etc/profile添加以下内容:
JAVA_HOME=/usr/java/jdk1.8.0_65
JRE_HOME=/usr/java/jdk1.8.0_65/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
vim /etc/bashrc添加以下内容:为后期Jenkins自动发布时调用shell做准备
JAVA_HOME=/usr/java/jdk1.8.0_65
JRE_HOME=/usr/java/jdk1.8.0_65/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
source /etc/profile
source /etc/bashrc
tar -zxvf apache-tomcat-7.0.67.tar.gz #解压tomcat tar包
mv apache-tomcat-7.0.67 /usr/local/tomcat7 #将tomcat目录移动到/usr/local/下并重命名为tomcat7
mv /usr/local/src/jenkins.war /usr/local/tomcat7/webapps/
cd /usr/local/tomcat7/webapps
java -jar jenkins.war #安装jenkins
/usr/local/tomcat7/bin/startup.sh #启动tomcat
cd /usr/local/src
tar -zxvf apache-maven-3.3.9-bin.tar.gz
mv apache-maven-3.3.9 /usr/local/maven
vim /etc/profile添加以下内容:
MAVEN_HOME=/usr/local/maven
PATH=$PATH:$MAVEN_HOME/bin
export PATH MAVEN_HOME
cd /usr/local/src
tar -zxvf apache-ant-1.9.6-bin.tar.gz
mv apache-ant-1.9.6 /usr/local/ant
vim /etc/profile添加以下内容:
ANT_HOME=/usr/local/ant
PATH=$PATH:$ANT_HOME/bin
export PATH ANT_HOME
source /etc/profile #使环境变量立即生效
到此Jenkins的系统设置即完成了,点击左下角的保存即可返回主页测试新建构建任务和发布,在新建构建任务的过程中要读取相应的源代码git库,因此首先要确保jenkins的服务器安装了git并且能顺利从git库中获取到相应的源代码才可以进行代码构建与发布。
云房使用了GitLab存放源代码,git地址为[email protected]:o2o/yf_EstimateMiddleware.git,要获取源代码首先要在jenkins服务端系统中/root/.ssh目录下生成一个公钥文件与私钥文件,将公钥文件的内容拷贝到GitLab中指定帐户的SSH密钥文本款中,看下图:
至此GitLab的权限添加完成,接着在jenkins服务端系统中测试拉取git库中的源代码文件,获取成功即可看到项目文件
mkdir /home/testgit
cd /home/testgit
git clone git@192.168.3.249:o2o/yf_EstimateMiddleware.git
填写以下相应内容:
点击左下角保存后点立即构建,jenkins会进行编译安装与打包将项目生成一个包含项目名称.war结尾的包,构建完成后请点击工作空间--target即可看到项目名称.war的包
接着点击配置,继续配置构建后的发布操作,如下图:
到此jenkins构建发布任务配置完成,还需做一步在发布的目标服务器上/save目录中建立一个publish.sh名称的脚本并给予执行权限,编写以下内容:
#!/bin/bash
#定义变量
TOMCAT_HOME="/usr/local/tomcat7"
TOMCAT_PORT=80
PROJECT="$1"
#参数验证
if [ $# -lt 1 ]; then
echo "you must use like this : ./publish.sh
exit
fi
if [ "$2" != "" ]; then
TOMCAT_PORT=$2
fi
if [ "$3" != "" ]; then
TOMCAT_HOME="$3"
fi
#关闭 tomcat
"$TOMCAT_HOME"/bin/shutdown.sh
echo "tomcat shutdown"
#检查 tomcat 进程
tomcat_pid=`/usr/sbin/lsof -n -P -t -i :$TOMCAT_PORT`
echo "current :" $tomcat_pid
while [ -n "$tomcat_pid" ]
do
sleep 5
tomcat_pid=`/usr/sbin/lsof -n -P -t -i :$TOMCAT_PORT`
echo "scan tomcat pid :" $tomcat_pid
done
#发布项目
echo "scan no tomcat pid,$PROJECT publishing"
rm -rf "$TOMCAT_HOME"/webapps/$PROJECT*
cp /save/$PROJECT*.war "$TOMCAT_HOME"/webapps/$PROJECT.war
#备份项目
BAK_DIR=/save/bak/$PROJECT/`date +%Y%m%d`
mkdir -p "$BAK_DIR"
cp "$TOMCAT_HOME"/webapps/$PROJECT.war "$BAK_DIR"/"$PROJECT"_`date +%H%M%S`.war
#删除项目.war包
rm -rf /save/$PROJECT.war
#启动 tomcat
"$TOMCAT_HOME"/bin/startup.sh
echo "tomcat is starting,please try to access $PROJECT conslone url"
最后点立即构建测试构建及shell脚本发布项目
构建发布完成,请访问http://目标服务器IP/项目名称
PS:如果系统中禁用了root用户的情况下,请把相应项目名称的文件夹所属主与所属组全部修改为对应的用户名与用户组,否则发布会失败
如文章对您有帮助,请打开支付宝扫码领取红包,就当做对作者的支持,谢谢