目录

一、项目打包

二、nohup后台不挂断启动

三、停止服务 

四、启动服务的几种方式 

1、直接启动jar包

2、后台启动jar包

3、指定日志输出启动

4、指定配置文件启动

5、指定配置文件、使用系统默认的log配置,不另行指定日志输入

6、指定分配系统资源大小


之前记录的有使用docker部署前后端项目,今天就体验了下不使用docker部署!(项目使用的mysql和redis数据库已经在docker中运行)

一、项目打包

打包就不详细说了,直接在idea上package就行了!

打包后把jar包复制到服务器空目录下(我的放在了/home/ local下):

二、nohup后台不挂断启动

nohup java -jar xxx.jar &

nohup意思是不挂服务、在后台不挂断运行、常驻的意思,关闭终端或者ctrl+c也不会终止程序(除非服务器关机),&表示执行命令后要生成日志文件nohup.out(当用nohup命令启动jar包时,如果不指定日志输出文件,则所有的输出都会被重定向到nohup.out文件中)。

运行上方命令后出现: nohup: ignoring input and appending output to 'nohup.out'属于正常情况,表示项目启动成功,最后在浏览器地址栏输入项目地址 检查项目是否部署成功。

 

三、停止服务 

通过执行 ps auxwww | grep xxx.jar 通过进程关键字查找进程PID。

执行 kill -9 PID 结束进程。

四、启动服务的几种方式 

1、直接启动jar包

java -jar xxx.jar

 此种方式ssh窗口会被锁定,不能再操作其他命令。如果需要执行其他命令,则需要打断进程(ctrl+c)或直接关闭窗口。

2、后台启动jar包

java -jar xxx.jar &

当前ssh窗口不被锁定,但是窗口关闭时程序终止运行,&代表在后台运行。

3、指定日志输出启动

nohup java -jar xxx.jar >log.out &

通过>log.out命令,将程序的日志输出重定向到log.out文件中。如果不指定日志输出文件,则会输出到nohup.out文件中。

4、指定配置文件启动

nohup java -jar xxx.jar --spring.profiles.active=pro >log.out &

通过--spring.profiles.active=pro来指定 启动时使用application-pro.yml或者application-pro.properties配置文件。

5、指定配置文件、使用系统默认的log配置,不另行指定日志输入

// 启动/opt/a/目录下的 test.jar ,配置文件使用 pro,日志使用配置文件默认配置,不单独指定。

nohup java -jar /opt/a/a.jar --spring.profiles.active=pro >/dev/null 2>&1 &

常见的文件描述符有如下:

  • 0 :stdin(标准输入)
  • 1 :stdout(标准输出)
  • 2 :stderr(标准错误)
2> /dev/null

> 代表重定向操作。将标准错误重定向到/dev/null ,即不输出错误信息。
>/dev/null 2>&1 & : 等同于 1>/dev/null 2>&1 &, 即把标准输出重定向
到/dev/null,并且把标准错误2重定向标准输出1,即标准输出和标准错误都输出到 /dev/null。

6、指定分配系统资源大小
 

nohup java -Xms500m -Xmx500m -jar XXX.jar --spring.profiles.active=dev >log.out &

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐