在CentOS7上使用java -jar运行SpringBoot项目并注册为开机启动Service

首先确保你的linux上有jdk 没有的话需要安装一下,我觉得使用yum的安装较为简单
首先查询你想要安装的jdk

yum search java|grep jdk

我选择java8的

yum install  java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64

安装好后需要设置环境变量

vi /etc/profile

添加如下内容

#set java environment
JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

你还需要让修改生效

source /etc/profile

安装完毕后需要查询一下java的版本

java -version

如果输出如下内容,则安装成功

[root@izwz9e0h6bdcgrmfszpc25z system]# java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-b10)
OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)

接下来是使用FTP软件如filezilla把你的springboot项目上传到linux上

我放在 /root/data下
进入服务文件目录

cd /etc/systemd/system/

创建文件

vim my-apps.service

添加内容

[Unit] Description=apps
After=syslog.target

[Service] ExecStart=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/bin/java -jar /root/data/gm-springboot-0.0.1-SNAPSHOT.jar

[Install] WantedBy=multi-user.target

你只需要改的是Description和 ExecStart
ExecStart的前一部分代表jdk的安装的bin目录 ,后一部分代表你的springboot项目的位置,其他的固定

接下来让linux开机就启动项目

systemctl enable my-apps

接下来开启项目

systemctl start my-apps

接下来可以查看项目启动的状态,有没有成功

systemctl status my-apps

你还可以查看端口是否监听,我的项目的端口使用8080

netstat -tnlp|grep 8080

你还可以查看项目的日志

journalctl -u my-apps or journalctl -u my-apps.service

这时候注意还要开启端口号,我的为8080

firewall-cmd --zone=public --add-port=8080/tcp --permanent

重启防火墙使之生效

firewall-cmd --reload

如果想要停止项目

systemctl stop my-apps

如果想要取消开机启动的service

systemctl disable my-apps

猜你喜欢

转载自blog.csdn.net/lhc0512/article/details/80635929