在linux服务器上安装完了jenkins之后,用我自己的个人博客来测试一下,项目是maven工程,版本管理工具是svn,容器是tomcat,正好利用jenkins来做一下自动打包部署,这样就省得我每次手动传包了~
整个部署分为三大块:全局工具配置、插件安装、新建任务,全局工具配置只会在第一次部署时用到,后面如果再利用jenkins部署其他项目就可以省去这一步了。
本文的一些操作设置,基本上都是在上图中红色框起来的两个菜单下配置的。
maven全局配置
这个类似于自己电脑上的maven默认配置,如果项目没有特殊指定,就会去找用户目录下的.m2文件夹中的settings.xml文件。
maven配置
我之前在服务器上已经安装过了,所以这里直接使用我自己装的,就不需要jenkins再帮我装了。
jdk配置
跟上面的maven一样,也是之前自己装过了,就不再花时间重新安装了。
安装svn插件
如果没有安装,第一次安装的时候,点击右侧安装按钮后,会看到如下界面:
安装完毕之后,还需要重启一下jenkins,就把上图中的那个复选框勾选一下就行了,它会自动重启,也可以在安装的过程中就把它给勾上。
安装maven插件
两个插件的安装流程一样,都是傻瓜式的一键安装,没有什么特殊的地方,就不再重复截图赘述了。
到这里,基本的功能已经配置完毕了,接下来就是见证奇迹的时刻了!!!
新建一个任务
这张图是我一开始没安装maven插件的时候截的,所以在下面的选项中看不到maven项目,所以我这里选择了第一项“构建一个自由风格的软件项目”(最终效果都一样)。
配置打包项目的svn相关信息:地址、账号、密码
首次使用,需要在系统中添加svn账号密码,下次再使用的时候,就可以直接选择了。
配置界面:
只用填用户名和密码就行了,其他的可以不用管。
配置maven的打包命令
注意选项别弄错了,必须是最后一项“调用顶层maven目标”,在目标中填入maven的打包命令。
配置shell脚本,启动tomcat
自定义shell脚本,我在网上找了一个写的还不错的,拿来改了一下,大家可以参考一下我的脚本
#!/bin/sh
#kill tomcat pid
#这句尤为重要
export BUILD_ID=tomcat_jwcz_admin_build_id
# 1.关闭tomcat
pidlist=`ps -ef|grep tomcat-admin|grep -v "grep"|awk '{print $2}'`
if [ "$pidlist" == "" ]
then
echo "----tomcat已经关闭----"
else
echo "tomcat进程号 :$pidlist"
kill -9 $pidlist
echo "kill $pidlist:"
fi
pidlist2=`ps -ef|grep tomcat-admin|grep -v "grep"|awk '{print $2}'`
if [ "$pidlist2" == "" ]
then
echo "----关闭tomcat成功----"
else
echo "----关闭tomcat失败----"
fi
# 2.复制jenkins生成的war包到tomcat中webapps中
cp /root/.jenkins/workspace/jwcz/admin/target/admin.war /usr/local/appBase/admin.war
sleep 3s
echo "----复制war包完毕----"
# 3.移除原来tomcat中webapps中的项目文件夹
rm -rf /usr/local/appBase/admin
sleep 1s
echo "----删除旧文件完毕----"
# 4.解压war包
unzip /usr/local/appBase/admin.war -d /usr/local/appBase/admin
sleep 1s
echo "----解压war包完毕----"
# 5.移除war包
rm -rf /usr/local/appBase/admin.war
sleep 1s
echo "----删除war包完毕----"
# 6.启动tomcat
cd /usr/local/tomcat-admin/bin
./startup.sh
echo "----开始启动tomcat----"
配置完毕,开始构建
一路下来,基本上没碰到什么问题,自动更新代码、自动打包、自动部署,就是大家在写shell脚本的时候,务必仔细核对文件路径!!!
如果还不会安装jenkins,请移步:Linux环境下安装Jenkins详细图文教程(war包方式)
评论