Jenkins-自动部署,备份
Jenkins-自动部署,备份
问题导入:
环境:
CentOS 7, Tomcat 8.5, Jdk 1.8, Maven 3.25 ,Jenkins war包 2.x
原因:
每次部署都需要手动上传war包,备份以及重启服务,耗时耗力;
解决方案:
利用Jenkins自动部署
1.安装并且配置Jenkins.参考:https://blog.csdn.net/zh520qx/article/details/55669142
2.安装Jenkins插件:Publish Over SSH ,重启Jenkins.
3.先配置服务器信息:点开:系统管理-->系统设置-->(往下拉)找到Publish over SSH,如图配置:

4.回到首页,打开任务(项目)的配置:

找到:


5.此处,已经配置完了.接下来就是shell脚本,脚本将进行备份以及重启tomcat.,这里贴出本人的完整的shell脚本,根据个人情况.shell空格敏感,也可以参考其他的写法;
#!/bin/sh
echo "开始执行"
echo "删除旧的备份文件"
rm -rf /app/backfils/xxx/xxx
echo "备份项目,重新从tomcat中复制项目文件到此处"
cp -r /app/tomcat/webapps/app/backfiles/xxx/
echo "停止tomcat"
/app/tomcat/bin/shutdown.sh
sleep 10
echo "杀掉进程"
pid=$(ps -ef |grep -w 'tomcat-Djava' | grep -v 'grep'|awk '{print $2}')
if [ -n $pid]; then
kill -9 $pid
sleep 3
fi
echo "删除tomcat旧的war包以及项目文件"
rm -rf /app/tomcat/webapps/xxx
rm -rf /app/tomcat/webapps/xxx.war
echo "复制文件到tomcat发布目录下"
cp /app/deployfiles/xxx/xxx.war /app/tomcat/webapps/
echo "启动tomcat"
/app/tomcat/bin/startup.sh
echo "完成"
执行的输出语句可以在Jenkins的构建控制台看到;
shell小心一些其实没啥技术含量,大家主要看看中文知道思路就行了,有更好的思路请留言....至此没啥其他的了.已经可以自动部署,以及备份和重启了....告辞!
原创文章,转载请注明出处!
Jenkins-自动部署,备份的更多相关文章
- jenkins自动部署代码到多台服务器
下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...
- Jenkins自动部署Tomcat项目
Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:
- 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建
使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 目录 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 使用jenkins自动 ...
- 使用Jenkins自动部署博客
title: 使用Jenkins自动部署博客 toc: true comment: true date: 2017-12-17 19:48:10 tags: ['Jenkins', 'CI'] cat ...
- 内存溢出导致jenkins自动部署到tomcat失败
原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html jenkins自动部署wa ...
- 关于gitlab+jenkins自动部署代码的实现
本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...
- Jenkins自动部署spring boot
Jenkins自动部署spring boot 背景介绍 本公司属于微小型企业,初期业务量不高,所有程序都写在一个maven项目里面,不过是多模块开发. 分了login模块,service模块,cms模 ...
- 持续集成之Jenkins自动部署war包到远程服务器
一.无war包链接的情况 无war包链接时,需先下载war包到本地,然后执行: ---------------------------------------------以下部分为转载-------- ...
- Jenkins自动部署增加http状态码校验
公司推进Jenkins自动化部署,因为web站点都是集群部署,部署需要测试指定服务器web服务是否成功启动,页面是否正常访问,经过不断baidu发现,python的request模块可以很好的解决这一 ...
- jenkins自动部署tomcat
关于部署的3种思路: 远程部署(jenkins编译部署到远程服务器): 安装ssh插件 ssh插件配置 添加远程jenkins服务器节点: 本地部署(与jenkins在同一服务器): 关于maven构 ...
随机推荐
- Python搭建调用本地dll的Windows服务(浏览器可以访问,附测试dll64位和32位文件)
一.前言说明 博客声明:此文链接地址https://www.cnblogs.com/Vrapile/p/14113683.html,请尊重原创,未经允许禁止转载!!! 1. 功能简述 (1)本文提供生 ...
- uni-app微信小程序登录授权
微信小程序授权是非常简单和常用的功能,但为了方便,还是在此记录一下要点: 首先是需要用到一个授权按钮来触发获取用户信息授权: 关键在于 open-type 为 getUserInfo , 然后有个@g ...
- 使用数据泵,在不知道sys用户密码的情况下导出导入
expdp \"/as sysdba\" directory=my_dir logfile=expdp.log dumpfile=expdp_scott.dmp schemas=s ...
- Docker修改默认的网段
一,问题 docker安装后默认的网段是172.17网段的,和真实环境网段冲突导致本机电脑无法连接docker机器. 二,解决办法 修改docker默认网段 1,先把docker停止 systemct ...
- springmvc中使用文件上传功能
项目代码:https://github.com/PeiranZhang/springmvc-fileupload Servlet3.0之前使用文件上传功能 Servlet3.0之前需要使用common ...
- jenkins 配置任务
新建筑任务 ""imuke 建一个自由风格的 要执行python .py程序,我们需要把.py所在的目录设置进去 如果保存的是在svn,需要把他的地址放进去 如图: 设置自动构建时 ...
- 移动端 canvas基础1
一.canvas画布 Canvas是HTML5中新出的一个元素,开发者可以通过JS脚本动态绘制图像. #1. 创建canvas画布 在页面中创建canvas标签,并设置其id和宽高 (不要通过css设 ...
- Wordpress Polylang 翻译自定义格式
WordPress 多语言插件 Polylang 主题函数参考 重要:使用一个函数之前,你必须检查函数是否存在,否则,你的网站可能会在 Polylang 更新之前遇到致命错误(因为 WordPress ...
- 手写算法-python代码实现KNN
原理解析 KNN-全称K-Nearest Neighbor,最近邻算法,可以做分类任务,也可以做回归任务,KNN是一种简单的机器学习方法,它没有传统意义上训练和学习过程,实现流程如下: 1.在训练数据 ...
- webform中按钮触发事件顺序
执行顺序 先执行js端的方法,后执行后台的方法 一般js端方法用做数据的校验,校验成功 return true;后才执行后台的方法. 示例 <asp:Button runat="ser ...