如果不使用Docker
和Kubernets
部署管理SpringBoot
应用,可以选择Systemd
。
因为SpringBoot自带Tomcat之类的Web应用服务器,可以直接java -jar xxx.jar
的方式启动起来。
如果我们直接使用nohup java -jar xxx.jar &
之类的虽然也可以实现后台运行,但是是有可能因为某些原因挂掉的,所以我们需要找到一种工具让应用可以重启或者开机启动。
我们可以使用Python的Supervisor
,也有盆友说可以使用Node的pm2
,但是我一般都是选择Systemd
,现在Linux系统都是自带这个的。
步骤
生成jar包:进入到SpringBoot项目的目录,然后执行:mvn clean package
,找到target目录里面的jar包。
上传jar包:scp -P xx_port xxx.jar username@host:./
SSH登录进入服务器之后,首先需要安装JDK,然后把jar包复制到/home/www/applications
在/etc/systemd/system/目录下面新建一个service的配置,配置内容参考:
|
|
新增一个新的service之后,需要让配置生效,如果修改配置文件,需要reload。
使xx service生效:systemctl enable xx.service
刷新配置:systemctl daemon-reload
启动xx service:
systemctl start xx.service
查看xx service的status:
systemctl status xx.service
重启xx service:
systemctl restart xx.service
看xx service日志,按住shift+g可以跳转到最后一行:
journalctl -u xx.service
动态像tail -f xxfile
一样查看对应service的日志:
journalctl -f xx.service