第一步:在pom文件中引入maven管理插件 spring-boot-maven-plugin
使用maven把工程打成jar包
在命令行执行jar,即可发布springboot应用了
在linux中使用如下命令:java -jar springboot.jar 即可执行该项目了
那么问题来了,你发布项目后,只要关闭启动窗口,服务就会停止,所以重点来了,后台启动项目
第二步:在Linux上创建文本,spring.service,本人是在windows上创建文本,在上传到Linux中,效果一样
编辑的语句如下:
[Unit]
Description=abcd service
After=syslog.target
[Service]
Type=simple
ExecStart= /usr/bin/java -jar /home/app/abcd.jar
[Install]
WantedBy=multi-user.target
保存起来,为 abcd.service文件
说明
Description 服务描述
/usr/bin/java java路径(我这里是绝对路径,可以使用其他可执行java的路径)
/home/app/abcd.jar 可执行jar包的路径
然后将文本文件保存成后缀名为.service
上面的文件保存之后 可以是abcd.service
3.上传可执行jar包和.service安装文件
jar包程序文件上传到自定义的位置(我们会在每个系统用户下定义一个叫app的文件夹将jar包保存在此文件夹)
.service文件上传到系统/etc/systemd/system 目录下(本人用的是centos7系统,其他系统大同小异酌情处理)(如果你对linux文本编辑熟练的话 可以直接创建文件进行编辑)
注意编码要一致(验证是否一致只需在linux服务器上打开.service文件看是都和windows一致是否有乱码)
4.在部署服务器上执行以下命令(centos7)
刷新服务配置文件
systemctl daemon-reload
服务设置为开机启动
systemctl enable abcd.service
启动服务
systemctl start abcd.service
停止服务
systemctl stop abcd.service
查看服务状态
systemctl status abcd.service
5.查看日志
journalctl -u abcd.service
这样部署就可以免去打成war包部署而存在的多一块项目路径的问题同时也支持spring cloud 注册中心(其实也主要是为了使用spring cloud注册中心)