前面博文介绍了Supervisor进程管理,实际应用能够对springboot应用进行管理,若是springboot应用挂掉,Supervisor还能够对它进行自动重启.java
点击查看进程管理利器Supervisor--入门简介web
点击查看进程管理利器Supervisor--centos7下安装与卸载spring
转帖请注明原贴地址:https://my.oschina.net/u/2342969/blog/2986183vim
这里就不赘述了,自行百度建立一个,本文应用名叫作: springboot-test.jar,放置目录在:/opt/appscentos
须要结合博文进程管理利器Supervisor--centos7下安装与卸载springboot
#vim /etc/supervisor/conf.d/springboot-test.conf
配置内容以下:bash
[program:mohurd-search] environment=JAVA_HOME=/opt/jdk1.8.0/bin ; 这里能够建立环境变量 directory = /opt/apps ; 程序的启动目录 command = /opt/jdk1.8.0/bin/java -Xms2048m -Xmx4096m -Dspring.profiles.active=prd -Dserver.port=8081 -jar /opt/apps/springboot-test.jar ; 启动命令,能够看出与手动在命令行启动的命令是同样的 autostart = true ; 在 supervisord 启动的时候也自动启动 startsecs = 30 ; 启动 30 秒后没有异常退出,就看成已经正常启动了 autorestart = true ; 程序异常退出后自动重启 startretries = 3 ; 启动失败自动重试次数,默认是 3 user = test ; 用哪一个用户启动 redirect_stderr = true ; 把 stderr 重定向到 stdout,默认 false stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默认 50MB stdout_logfile_backups = 20 ; stdout 日志文件备份数 ; stdout 日志文件,须要注意当指定目录不存在时没法正常启动,因此须要手动建立目录(supervisord 会自动建立日志文件) stdout_logfile = /var/log/springboot-test.log ;应用日志目录
能够经过上一篇博文中的web控制台或者命令行启动, 命令行启动以下:app
# 读取有更新(增长)的配置文件,不会启动新添加的程序
supervisorctl rereadcentos7
# 重启配置文件修改过的程序
supervisorctl updatespa
# 关闭程序
supervisorctl stop springboot-test
# 启动程序
supervisorctl start springboot-test
# 重启 supervisorctl restart springboot-test