Jenkins部署web项目到Tomcat(shell脚本)
2024-09-03 07:28:00
一、首先配置Publish Over SSH插件
配置地址:系统管理--》系统设置--》Publish over SSH(需要安装Publish over SSH插件)
二、jenkins项目配置
项目的基本配置都一样,就是在Post Steps中配置SSH
在Post Steps选择如下如所示:
Transfer SetSource files:表示要上传的本地的war包及路径,可到工作空间去看
Remove prefix:表示要上传时要去除的文件夹。即仅仅上传war包
remote driectory:即表示运行时的路径,相当于把war包上传到这里了,这个很重要,跟上面构建后操作的Remote Directory是会合并到一起的,比如我上面构建后操作中配置的RemoteDirectory是/home/rhel7/tomcat/tmp,然后这边远程服务器(也就是在系统设置->Publish over SSH)的Remote Directory配置的是/,那么war包传输过去路径是/home/rhel7/tomcat/tmp目录。
exec commad:要运行的命令
Exec command:
cd /home/rhel7/tomcat/apache-tomcat-8091/bin
chmod 777 deploy.sh
./deploy.sh
deploy.sh脚本
#!/bin/bash
# defined
TOMCAT_HOME=/home/rhel7/tomcat/apache-tomcat-8091/
file=$TOMCAT_HOME/webapps/jenkins-tomcat.war
ID=`ps -ef | grep java | grep $TOMCAT_HOME|awk '{print $2}'`
echo $ID
echo "kill tomcat"
kill -9 $ID
echo "remover war file"
if [ -f "$file" ];then
cp $file $TOMCAT_HOME/webapps/backup/jenkins-tomcat.war.`date +%Y%m%d%H%M%S`
fi
# 移除旧的项目
cd $TOMCAT_HOME/webapps
rm -rf jenkins-tomcat
rm -rf jenkins-tomcat.war
# 删除备份(删除大于三个)
cd $TOMCAT_HOME/webapps/backup
ls -lt | awk 'NR>3{print $NF}' | xargs rm -rf
echo "copy war to webapp"
cd /home/rhel7/tomcat/tmp
cp jenkins-tomcat.war $TOMCAT_HOME/webapps
echo "start tomcat"
cd $TOMCAT_HOME/bin
./startup.sh
最新文章
- HackerRank ";Poisonous Plants";
- Tomcat 设置为服务使用脚本 service
- C陷阱与缺陷(四)
- Android string.xml error: Apostrophe not preceded by \
- 也来“玩”Metro UI之磁贴
- Java-----SSM(SpringMVC+Spring+mybaties)框架整合
- hihoCoder 1033 : 交错和 数位dp
- UVA - 1218 Perfect Service (树形DP)
- 持续集成CI相关的几个概念
- linux 中部署 rsync 实现文件远程备份及 同步
- 复习回顾(String,StringBuffer,Arrays方法总结)
- 微信小程序之基础入门
- MySQL备份与恢复.md
- shell脚本编程之“最简单的死循环”【转】
- Automatic WordPress Updates Using FTP/FTPS or SSH
- CentOS 6.5 下搭建NTP服务器
- Spring MVC基本配置和实现(四)
- 《SQL必知必会》知识点汇总
- 软件开发工具——Make
- Android Studio代码字体模糊解决方法