linux服务器重启后,自动重启web项目
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33390789/article/details/78812253
为实现服务器重启后自动重启web项目,需将重启web项目的脚本放入linux服务器 /etc/rc.local 文件中。
用以下命令编辑该文件
vi /etc/rc.local
在该文件中加入你要重启java项目的命令即可。
或者编写另外一个shell 脚本,将java重启的脚本写入,在 /etc/rc.local文件中执行这个脚本(上图就是我另写了一个restart.sh脚本)。
-
#!/bin/sh
-
pkill -9 java
-
cd /hxsrm/zookeeper-3.4.6/bin
-
./zkServer.sh start
-
sleep 5s
-
cd /hxsrm/provider
-
./hx-srm-service.sh start
-
sleep 5s
-
cd /hxsrm/apache-tomcat-7.0.73/bin
-
./startup.sh
在这脚本中,首先kill掉java进程,然后再把你要启动项目的步骤写入即可。
我的项目用的zookeeper+dubbo框架,所以有三个进程(zookepper,service,tomcat)。
需要注意的是,如果在Windows下编写的.sh脚本,放入linux下shell文件的话可能会报错:
“bash: ./rebuild.sh: /bin/sh^M: bad interpreter: No such file or directory”
原因是不同系统的编码格式造成的,你可以在编辑该脚本的情况下输入
:set ff
查看脚本编码格式,可以看到如下信息
fileformat=dos 或 fileformat=unix
输入
:set ff=unix
:wq (存盘退出)
再执行脚本就没问题了,这样你下次手动重启java项目直接执行restart.sh文件就可以kill进程+重启服务器