前面博文介紹了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