项目部署shell脚本

简介: 项目部署shell脚本

项目部署的时候每次都要

先 ps -fC java 找到对应的额Java进程,

然后 kill -9 pid 杀死进程,

再nohup java -jar app.jar &

这样操作一波才能重新部署, 比较麻烦, 下面写一个deploy.sh脚本, 以后每次重新部署项目的时候只需要执行一下deploy.sh脚本即可, 接下来看我怎么操作.

先这么的

在jar包同级目录 vim deploy.sh

然后这么的

#!/bin/bash
pid=$(ps -ef | grep "port=8090" | grep -v grep | awk '{print $2}')
if [ -n "$pid" ];then
    kill -9 $pid
fi
nohup java -jar miaosha-1.0-SNAPSHOT.jar --server.port=8090 &
tail -f nohup.out
echo "finished"

里面的port=8090的值和miaosha-1.0-SNAPSHOT.jar名字根据自己的项目来替换即可

然后为了保证它能执行, 你这么的

chmod u+x deploy.sh

这样就把他变成一个可执行文件

如果你是在Windows上把deploy.sh文件拷到Linux上的, 执行报错说: 坏的解释器: 没有那个文件或目录

你这么的

sed -i ‘s/\r$//’ deploy.sh

然后再执行 ./deploy.sh

如果你还有各种环境, 需要加上对应的环境, 你这么的

#!/bin/bash
pid=$(ps -ef | grep "port=8080" | grep -v grep | awk '{print $2}')
if [ -n "$pid" ];then
    kill -9 $pid
fi
nohup java -jar app.jar --spring.profiles.active=test --server.port=8080 &
tail -f nohup.out
echo "finished"

jar包的同级目录你放一个application-test.yml文件, 这样就表示用你指定的这个测试环境的yml配置文件

目录
相关文章
|
25天前
|
Shell Linux 调度
Shell脚本常见的几个问题解答
Shell脚本常见的几个问题解答
17 1
|
4月前
|
存储 监控 Unix
Shell脚本编写教程
Shell脚本编写教程
38 1
|
9月前
|
Shell Linux Perl
shell脚本应用实战2
shell脚本应用实战2
48 0
shell脚本应用实战2
|
4月前
|
Unix Shell Perl
Shell脚本学习2
Shell脚本学习2
|
4月前
|
Unix Shell Linux
Shell脚本学习3
Shell脚本学习3
|
4月前
|
Unix Shell Linux
Shell脚本学习1
Shell脚本学习1
|
4月前
|
JavaScript 前端开发 Shell
Shell 教程
Shell 教程
35 0
|
9月前
|
运维 网络协议 Shell
shell脚本应用实战
shell脚本应用实战
60 0
|
9月前
|
Java Shell
shell脚本:入门介绍
shell脚本:入门介绍
66 0
|
10月前
|
关系型数据库 Shell 网络安全
【shell 脚本编程】430 行代码,带你使用脚本一键部署 LAMP
【shell 脚本编程】430 行代码,带你使用脚本一键部署 LAMP
78 0