jenkins环境自动部署
https://my.oschina.net/tonystark/blog/1920889
示例脚本:
#!/bin/bash #export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。
export BUILD_ID=dontKillMe #指定最后编译好的jar存放的位置
www_path=/usr/local/shandie/java #Jenkins中编译好的jar位置
jar_path=/var/lib/jenkins/workspace/test-service/target/ #Jenkins中编译好的jar名称
jar_name=sd-discover-eureka-0.0.1-SNAPSHOT.jar #获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程
pid=$(cat /usr/local/shandie/java/shaw-test-web.pid) #进入指定的编译好的jar的位置
cd ${jar_path} #将编译好的jar复制到最后指定的位置
cp ${jar_path}/${jar_name} ${www_path} #进入最后指定存放jar的位置
cd ${www_path} #杀掉以前可能启动的项目进程
kill -9 ${pid} #启动jar,指定SpringBoot的profiles为test,后台启动
nohup java -jar ${jar_name} & #将进程ID存入到shaw-web.pid文件中
echo $! > /usr/local/shandie/java/shaw-test-web.pid
基本思路就是添加一个maven项目,然后去git分支拉取项目,然后编译,运行项目脚本即可。脚本根据需要来执行
jenkins环境自动部署的更多相关文章
- Gitlab+Jenkins实现自动部署
		
Gitlab+Jenkins实现自动部署 系统环境: Gitlab主机 IP:192.168.1.2 Jenkins主机 IP:192.168.1.3 一.为何要做自动部署 #部署Tomcat的在 ...
 - 简进祥-SVN版本控制方案:多分支并行开发,多环境自动部署
		
两地同时开发一个产品,目前线上有3个环境:测试环境.预发布环境.生产环境.目前系统部署采用jenkins自动化部署工具 用jenkins部署的方案 jenkins 测试环境:配置了各个分支的svn 地 ...
 - svn版本控制方案:多分支并行开发,多环境自动部署
		
背景 keywords:svn,trunk,branch,jenkins,maven,merge 两地同时开发一个产品,目前线上有3个环境:测试环境.预发布环境.生产环境.目前系统部署采用jenkin ...
 - Jenkins代码自动部署相关文档
		
环境 centos 7.0+ Java JDK 1.8+ jenkins 2.220 maven 3.0+ git 1.8+ 注意事项 一. linux 安装 JDK (jdk-8u201-linux ...
 - 使用jenkins 插件自动部署项目至tomcat
		
前面使用maven.ant编译项目就不说,只说一下使用jenkins的插件自动部署项目 1.首先jenkins安装插件Deploy to container Plugin ,下载地址为:https:/ ...
 - Jenkins之自动部署、代码安全扫描、自动化接口测试
		
搭建Jenkins wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.reporpm --i ...
 - springboot+Jenkins+docker-compose自动部署项目实践
		
DevOps思想 一个开发.测试.运维的整个过程的思想. plan:需求.计划 code:编码 build:构建 test: 测试 release:发布版本 deploy:部署 operate:项目运 ...
 - linux环境下搭建jenkins实现自动部署
		
写在前面:公司项目初期,环境一切从始.因此,项目的发布环境需要自己搭建.就动手搭建了jenkins,在此把个人的搭建过程以及搭建中碰到的问题一起总结一下. 1. 准备环境. 首先,需要jdk是必须要安 ...
 - Jenkins+Svn+Docker搭建持续集成环境 自动部署
		
一.准备工作: 两台服务器:192.168.206.212,192.168.206.213 自己新建一个maven项目 其中两台机子做下面的软件配置 212机子: 安装expect并配置: 安装jen ...
 
随机推荐
- Python爬虫实践~BeautifulSoup+urllib+Flask实现静态网页的爬取
			
爬取的网站类型: 论坛类网站类型 涉及主要的第三方模块: BeautifulSoup:解析.遍历页面 urllib:处理URL请求 Flask:简易的WEB框架 介绍: 本次主要使用urllib获取网 ...
 - 10、Fiddler中设置断点修改Response
			
当然Fiddler中也能修改Response 第一种:打开Fiddler 点击Rules-> Automatic Breakpoint ->After Response (这种方法会中 ...
 - Java开发桌面程序学习(11)——javafx 鼠标点击,右击,双击
			
javafx 鼠标事件 给某个控件设置鼠标点击监听器,三个条件分别判断为单击,右击还是双击 单击判断 event.getButton()==MouseButton.PRIMARY 右击判断 event ...
 - Java生鲜电商平台-高并发核心技术订单与库存实战
			
Java生鲜电商平台-高并发核心技术订单与库存实战 一. 问题 一件商品只有100个库存,现在有1000或者更多的用户来购买,每个用户计划同时购买1个到几个不等商品. 如何保证库存在高并发的场景下是安 ...
 - UITableView总结
			
.协议介绍 UITableViewDataSource() UITableViewDelegate(常用) .刷新 下拉刷新: 上拉刷新 .搜索 .重用 自定义cell 不使用重用方法 注册Cell ...
 - 在PyCharm中打开文件的位置
			
选中文件,右键选择 Show in Explorer (在资源管理器中显示) 只需要路径时,选择第四个Copy Path ,会复制文件的路径
 - 浅谈AMD与CMD
			
AMD 是 RequireJS 在推广过程中对模块定义的规范化产出. CMD 是 SeaJS 在推广过程中对模块定义的规范化产出. 这些规范的目的都是为了 JavaScript 的模块化开发,特别是在 ...
 - -shared -fPIC
			
gcc -shared -fPIC -o 1.so 1.c 这里有一个-fPIC参数 PIC就是position independent code PIC使.so文件的代码段变为真正意义上的共享
 - 树型DP(2)
			
声明 https://blog.csdn.net/no1_terminator/article/details/77824790 参考课件和讲授来自Accelerator 找树的直径 树的直径定义为一 ...
 - Python的运用基础3
			
1. 简述执行Python程序的两种方式以及他们的优缺点? 交互式(jupyter) 优点:运行一句执行一句 缺点:关闭即消失 ==例如== win10系统cmd窗口 命令行式(Pycharm) 优点 ...