一 使用shell命启动spring boot 项目

1. 使用shell停止当前项目

#!/bin/sh

main() {
clear pid=`ps -ef|grep xx.jar|grep -v grep|grep -v kill|awk '{print $2}'` if [ -n ${pid} ]; then
echo 'start Kill Process --->'
kill -9 $pid until [ -n $tempPid ]
do
echo 'Killing Process ... ...'
sleep 2
tempPid=`ps -ef|grep xx.jar|grep -v grep|grep -v kill|awk '{print $2}'`
done
echo 'killed device.jar <---'
fi
} main $1

  

2. 使用shell拷贝替换要启动的Java包

#!/bin/sh

target=/home/robot/device/jar/xx.jar
if [ -f $target ]; then
rm -rf $target
fi cp -rf /var/lib/jenkins/workspace/robot-device/target/xx.jar $target

3. 使用shell启动Java包

#!/bin/sh
echo "赋权限"
chmod -R /home/robot/device/jar/xx.jar
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address= -jar /home/robot/device/jar/xx.jar
#!/bin/sh
nohup sh startup-api.sh>starup-api.log >& &

二 使用shell以及docker命令 生成镜像

docker build -t haier-robot-alarm:1.0. .
docker login -u hollysys -p hollysys-xian
docker push haier-robot-alarm:1.0.

三 使用pipeline命令发布程序

node{

  def mvnHome
stage('Preparation') {
// Get some code from a GitHub repository
git branch: 'stage', credentialsId: '4ea34875-7eb6-4c8b-b9b2-f437a0aa5fb2', url: 'http://172.21.46.15/HairRobot/micro-services/zuul.git'
} stage("build-web"){
dir('/var/lib/jenkins/workspace/robot-zuul-cd/webroot') {
//sh "rm -rf /var/lib/jenkins/workspace/robot-zuul-cd/src/main/resources/static/*"
git branch: 'stage', credentialsId: '4ea34875-7eb6-4c8b-b9b2-f437a0aa5fb2', url: 'http://172.21.46.11/HairRobot/robot-management-platform-web.git'
//replace to the target hiacloud API_URL
sh returnStdout: true, script: '''sed -i "s/const baseUrl = \'http\\:\\/\\/172.21.12.25\\:9000\';/\\/\\/const baseUrl = \'http\\:\\/\\/172.21.12.25\\:9000\';/g" src/api/Ajax.js
sed -i "s/\\/\\/const baseUrl = process.API_URL;/const baseUrl = process.API_URL;/g" src/api/Ajax.js'''
sh "npm install"
sh "npm run production"
}
} stage('Build') {
mvnHome = tool 'M3'
echo "maven home is ${mvnHome}"
echo "${env.PATH}"
def JAVA_HOME
JAVA_HOME= tool 'JDK1.8'
echo "${JAVA_HOME}"
env.JAVA_HOME=JAVA_HOME
sh "pwd"
sh "'${mvnHome}/bin/mvn' clean package -DskipTests -X"
} stage('push docker'){
sh "docker build -t haier-robot-zuul:1.0.0 ."
sh "docker login -u hollysys -p 1234 hollysys-xian"
sh "docker push haier-robot-zuul:1.0.0"
}
}

DevOps之六 shell以及pipeline 命令部署的更多相关文章

  1. Linux初学:(二)Shell环境与命令基础

    博客园(FOREVER_ENJOY):http://www.cnblogs.com/zyx1314/ 本文版权归作者所有:欢迎转载!请注明文章作者和原文连接 Shell是什么? 1. Shell作为应 ...

  2. Shell编程-项目部署(一)

    由于实际工作中经常用到需要部署项目,比较麻烦,今天记录下如何利用shell脚本完成自动部署的工作,毕竟不是专业的运维出身,写的不好,还请勿喷_^o^_ 今天以部署Django项目为演示,进行部署项目, ...

  3. PowerShell命令部署WSP

    转载:http://www.cnblogs.com/ChunLiangZhang/archive/2012/07/18/2597335.html(作者:ChunLiang) 现在可以用SharePoi ...

  4. Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务

    文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...

  5. Azure DevOps Server 入门实践与安装部署

    一,引言 最近一段时间,公司希望在自己的服务器上安装本地版的 Azure DevOps Service(Azure DevOps Server),用于项目内的测试,学习.本着学习的目的,我也就开始学习 ...

  6. Bash Shell内建命令和保留字

    Bash Shell内建命令和保留字命令含义!保留字,逻辑非:不做任何事,只做参数展开.读取文件并在shell中执行它alias设置命令或命令行别名bg将作业置于后台运行bind将关键字序列与read ...

  7. 单行bash、shell、perl命令

    主题:单行经典bash.shell.perl命令 作者:luomg 摘要: 会陆陆续的写自己工作中的常用有意思的命令,争取你能看完后就能搞定常见操作, 且尽量自少提供基本shell.perl的实现方式 ...

  8. Shell 的source命令

    source命令用法: source FileName 作用:在当前bash环境下读取并执行FileName中的命令. 注:该命令通常用命令“.”来替代. 如:source .bash_rc 与 . ...

  9. shell 后台执行命令

    shell 后台执行命令方法: 1. nohup cmd &          后台会生成 nohup.out 文件 2.cmd >/路径/xx.log &   后台生成 xx. ...

随机推荐

  1. 直接在apk中添加资源的研究

    原文 http://blog.votzone.com/2018/05/12/apk-merge.html 之前接手过一个sdk的开发工作,在开发过程中有一个很重要的点就是尽量使用代码来创建控件,资源文 ...

  2. Web | JavaScript的引用数据类型强制转换类型

    我在这里主要的想提下的是JavaScript中的引用类型进行强制转换类型.因为对于基本数据类型的变换大多都是雷同的,很容易熟知,但是引用数据类型有一点小插曲. JavaScript的引用类型主要为对象 ...

  3. C++的六个函数

    一.构造函数 在C++中,构造函数是六个函数中的第一个,当一个对象被创建时,在它的整个周期中,是一个由生到死的 过程,即构造函数创建对象,析构函数析构对象.在对象被创建时,调用构造函数创建一个对象,这 ...

  4. 蓝桥杯第七届决赛(国赛)C++B组 第四题 机器人塔

    机器人塔 X星球的机器人表演拉拉队有两种服装,A和B.他们这次表演的是搭机器人塔. 类似: A    B B   A B A  A A B B B B B A BA B A B B A 队内的组塔规则 ...

  5. S/4 HANA中发票输出切换回NAST

    在S/4 HANA中,新的输出管理Output Management叫做SAP S/4HANA output control(输出控制),是基于BRF+的,而不是原来基于NAST的.关于S4新的输出控 ...

  6. 19-3-15Python中闭包,迭代器,递归

    函数名的使用 函数名可以当作值赋值给变量 函数名可以当作元素放到容器里 闭包 一个嵌套函数 在嵌套函数内的函数使用外部(非全局的变量) 满足以上两条就是闭包 python中闭包,会进行内存驻留,普通函 ...

  7. mysql使用Sql获取13位时间戳

    SELECT REPLACE(unix_timestamp(current_timestamp(3)),'.','');

  8. jQuery属性操作之.val()函数

    目录 .val()实例方法的三种用法 .val()函数源码 调用形式:$('xxx').val(); 调用形式:$('xxx').val(value); 调用形式:$('xxx').val(funct ...

  9. 初次使用vue-cli3 来搭建项目

    1,细数项目中使用的技术:vue, vue-router, vuex ,axios,vue-cli3, 快速建站. 2,mock技术使用的express-mockjs . 由于cli3 最新版的话缺少 ...

  10. redis常用数据类型操作命令集锦

    redis操作命令集锦 redis中五种数据类型 1) 字符串 String 特点: 存储所有的字符和字符串 应用场景: 做缓存使用 2) 哈希 hash 特点: 相当于java中hashMap集合 ...