ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

部署脚本不会写? 抄作业~

2022-03-01 11:34:36  阅读:186  来源: 互联网

标签:脚本 NAME 部署 spring APP 作业 nacos -- PIDS


#!/bin/bash

source /etc/profile

ENV_NAME=dev
APP_NAME=服务名
APP_PORT=8888

# 内存 OOM快照 JMX GClog  可自行调节大小
JAVA_OPTS="-Xms256m -Xmx256m \
    -XX:+HeapDumpOnOutOfMemoryError \
    -XX:HeapDumpPath=heapdump.hprof \
    -XX:+PrintGCDateStamps \
    -XX:+PrintGCDetails \
    -Xloggc:gc.log"


# 应用名 端口 nacos配置中心 地址 profile 连不上配置中心不让启动
APP_ARGS="--spring.application.name=$APP_NAME \
    --server.port=$APP_PORT \
    --spring.profiles.active=$ENV_NAME \
    --spring.cloud.nacos.config.server-addr=nacos地址 \
    --spring.cloud.nacos.config.namespace=nacos namespace \
    --spring.cloud.nacos.config.username= nacos 用户名\
    --spring.cloud.nacos.config.password= nacos 密码\
    --spring.cloud.nacos.config.extension-configs[0].dataId=application.yml \  无继承可删除
    --spring.cloud.nacos.config.extension-configs[0].refresh=true \  无继承可删除
    --spring.cloud.nacos.config.extension-configs[1].dataId=$APP_NAME.yml \
    --spring.cloud.nacos.config.extension-configs[1].refresh=true \
    --spring.main.allow-bean-definition-overriding=true"
    
  
# 停服
PIDS=`ps -ef | grep java | grep $APP_NAME.jar |awk '{print $2}'`
if [ -n "$PIDS" ]; then
    echo "kill $PIDS"
    kill $PIDS
fi
  
sleep 10
  
PIDS=`ps -ef | grep java | grep $APP_NAME.jar |awk '{print $2}'`
if [ -n "$PIDS" ]; then
    echo "kill -9 $PIDS"
    kill -9 $PIDS
fi
 
# 开socket端口的应用 kill后 socket还会被占用一段时间 这里等端口释放
sleep 10
 
#启动
nohup java $JAVA_OPTS -jar $APP_NAME.jar $APP_ARGS  >/root/logs/$APP_NAME/nohup.log 2>&1 &

#java $JAVA_OPTS -jar $APP_NAME.jar $APP_ARGS

APP_NAME 通常为jar 包名

保存为 .sh文件  服务器上直接执行即可

仿照上图的例子,可解决80%以上的jar包部署流程~

标签:脚本,NAME,部署,spring,APP,作业,nacos,--,PIDS
来源: https://blog.csdn.net/cnnlkj/article/details/123181062

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有