SpringBoot .jar .war打成Linux service
我们的Springboot项目一般部署到Linux后,需要启动
比如:java -jar feitian.war
这个时候我们的服务是启动了的,但是有个问题就是。一旦我们的连接终端断开,也就是我们与服务器的session失效后,不好意思。这个终端打开的进程会被结束,此时我们的服务是被关闭了的。
那这个时候我们需要来解觉这个问题,那就是将我们的spring boot做成一个服务。
首先我们创建一个:feitian.service 的文件
文件内写入我们要执行的命令:java -jar feitian.war
[Unit]
Description=feitian
After=syslog.target
[Service]
ExecStart=/usr/local/jdk1.8.0_172/bin/java -jar /usr/local/webapps/feitian.war
SuccessExitStatus=143
Restart=on-failure
[Install]
WantedBy=multi-user.target
文件创建完成后,我们保存改文件,将文件cp到/etc/systemd/system/
[root@izwz99z5o9dc90keftqhlrz webapps]# touch feitian.service
[root@izwz99z5o9dc90keftqhlrz webapps]# vi feitian.service
[root@izwz99z5o9dc90keftqhlrz webapps]# cp feitian.service /etc/systemd/system
[root@izwz99z5o9dc90keftqhlrz webapps]# cd /etc/systemd/system
这个时候我们就可以启动我们的服务了:
[root@izwz99z5o9dc90keftqhlrz ~]# systemctl restart feitian
<!---启动我们的服务---->
<!---查看我们的服务---->
[root@izwz99z5o9dc90keftqhlrz ~]# systemctl status feitian
● feitian.service - feitian
Loaded: loaded (/etc/systemd/system/feitian.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2018-12-03 16:56:34 CST; 2s ago
Main PID: 7053 (java)
CGroup: /system.slice/feitian.service
└─7053 /usr/local/jdk1.8.0_172/bin/java -jar /usr/local/webapps/feitian.war
Dec 03 16:56:34 izwz99z5o9dc90keftqhlrz systemd[1]: Started feitian.
Dec 03 16:56:34 izwz99z5o9dc90keftqhlrz systemd[1]: Starting feitian...
Dec 03 16:56:35 izwz99z5o9dc90keftqhlrz java[7053]: Spring boot start 开始了........
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]: . ____ _ __ _ _
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]: /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]: ( ( )\___ | '_ | '_| | '_ \/ _` | \ \
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]: \\/ ___)| |_)| | | | | || (_| | ) )
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]: ' |____| .__|_| |_|_| |_\__, | / / /
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]:
Dec 03 16:56:37 izwz99z5o9dc90keftqhlrz java[7053]: :: Spring Boot :: (v1.5.10.RELEASE)
服务就搞定了
系统重启自动启动
[root@iZ23evimvf8Z ~]# systemctl enable redis
注意
小调节:如果启动不了出现异常,可以用 systemctl status feitian 命令去查看
注意一个小点,如果service文件有修改 需要使用 systemctl daemon-reload 指令 加载一下,告诉systemd系统。
/usr/local/jdk1.8.0_172/bin/java 为Linux的java安装路径,可通过whereis java指令查看
[root@izwz99z5o9dc90keftqhlrz ~]# whereis java
java: /usr/local/jdk1.8.0_172/bin/java
[root@izwz99z5o9dc90keftqhlrz ~]#
怎么启动服务和结束服务我就不写了。
另外的一种方式方法一:
nohup java -jar test.jar &
方法二:
nohup java -jar test.jar >temp.txt &
方法三:
nohup $JAVA_HOME/bin/java -XX:PermSize=128M -XX:MaxPermSize=256M -jar /data/InstrintTask/InstrintTask.jar &
查看某端口占用的线程的pid
netstat -nlp | grep :80
更多推荐
所有评论(0)