服务器中启动和停止项目

服务器中启动和停止项目

一、前言

在服务器上部署项目,一般就是将项目挂在后台,如果是微服务首选docker-compose,可以看看这篇博客,但如果是单体服务,感觉用可执行脚本会方便一点。

这里讲的是单体服务的部署。

二、使用命令启动和关闭项目

我的项目打包后名称为:jeecg-boot-module-system-2.4.2.jar ,后面以这个为例。

1、启动项目

在项目所在文件使用如下命令:

powershell 复制代码
nohup java -jar <项目名称> &

这是我的:

powershell 复制代码
nohup java -jar jeecg-boot-module-system-2.4.2.jar &

在项目运行期间,会把日志输出到 nohup.out 文件中,重启项目记得删除!

2、停止项目

停止项目就是杀掉项目的进程了,先查看进程ID,命令如下:

powershell 复制代码
ps -ef | grep <项目名称>

这是我的:

powershell 复制代码
ps -ef | grep jeecg-boot-module-system-2.4.2.jar

一般在第一行,后面也有启动项目的命令,认准那个就不会错了。其中第二列就是我们需要的进程ID。

然后使用杀掉进程的命令:

powershell 复制代码
kill -9 <PID>

PID就是上面的进程ID,没有报错就代表成功了。

这是我的:

powershell 复制代码
kill -9 3357306

因为已经杀过项目了,所以提示进程不存在。

三、使用可执行脚本启动和关闭项目

感觉上面的步骤在更新项目的时候略显繁琐,尤其是关闭项目的命令,就想着能不能使用一个命令完成,于是就将命令放到一个脚本文件中。

1、启动项目

创建一个名为 start.sh 的文件,内容如下:

powershell 复制代码
nohup java -jar jeecg-boot-module-system-2.4.2.jar &
echo "Current PID:$!"
echo "Start Success!"

再通过命令启动,命令如下:

powershell 复制代码
sh start.sh start

可以看到项目已经启动,会把日志输出到名为 nohup.out 的文件中。

2、停止项目

创建一个名为 stop.sh 的文件,内容如下:

powershell 复制代码
# ps -ef | grep -v grep | grep jeecg-boot-module-system-2.4.2.jar | awk '{print $2}'
# 表示只输出"jeecg-boot-module-system-2.4.2.jar"的进程ID,就是PID,"awk '{print $2}'"表示只输出第二列,第二列就是PID所在列
PID=$(ps -ef | grep -v grep | grep jeecg-boot-module-system-2.4.2.jar | awk '{print $2}')
echo "Current PID:$PID"
kill -9 $PID
echo "Stop Success!"

再通过命令停止,命令如下:

powershell 复制代码
sh stop.sh start

可以看到项目已经停止。

相关推荐
小北方城市网13 小时前
第 6 课:Vue 3 工程化与项目部署实战 —— 从本地开发到线上发布
大数据·运维·前端·ai
曹牧14 小时前
C#:记录日志
服务器·前端·c#
记得记得就15115 小时前
docker作业
运维·docker·容器
运维行者_15 小时前
OPM 与传统管理工具的区别,在网络修复与自动化运维方面的优势在哪里?
运维·服务器·开发语言·网络·自动化·php·ssl
HaSaKing_72116 小时前
EMQX 多机集群部署完整实践(Docker + 社区版 5.8.8)
运维·docker·容器·emqx
南山nash17 小时前
企业级docker镜像仓库harbor安装与使用
运维·docker·容器·镜像仓库
云和数据.ChenGuang17 小时前
Logstash配置文件的**语法解析错误**
运维·数据库·分布式·rabbitmq·jenkins
TG:@yunlaoda360 云老大17 小时前
华为云国际站代理商NAT的规格有哪些?
服务器·网络·华为云
飞飞传输18 小时前
守护医疗隐私,数据安全摆渡系统撑起内外网安全伞!
大数据·运维·安全
Guheyunyi18 小时前
视频安全监测系统的三大核心突破
大数据·运维·服务器·人工智能·安全·音视频