使用Service部署Spring Boot
来源:互联网 发布:经济学是什么 知乎 编辑:程序博客网 时间:2024/05/22 01:44
手动部署
Spring Boot 的部署很简单,无论使用maven还是gradle构建成jar包之后,上传到服务器上,运行 java -jar *.jar
即可完成简单的部署。如果想使用外部的配置文件直接在后面加参数就行了 --spring.config.location=application-production.yml
如果想关闭终端还在后台启动的话加上 nohup 就可以了 nohup java -jar *.jar --spring.config.location=application-production.yml
杀掉进程
普通情况只要关闭终端或ctrl+c即可结束应用,如果使用nohup部署的话先要找到进程号,然后杀掉进程。
lsof -i:8080COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEjava 2417 root 26u IPv6 1672621 0t0 TCP *:webcache (LISTEN)kill -9 2417
使用service
如果每一次部署和杀死都要手动的话,频率多了其实也挺麻烦的,可以使用脚本来解决这个问题。
在 etc/init.d
先建一个脚本,把这个项目作为service来运行
例如 新建etc/init.d/test
内容如下
#!/bin/shSERVICE_NAME=testHOME=/root/webserver/testPATH_TO_JAR=$HOME/*.jarPID_PATH_NAME=/tmp/test.pidLOG=$HOME/production.logERROR_LOG=$HOME/production.errCONFIG=$HOME/application-production.ymlcase $1 in start) echo "Starting $SERVICE_NAME ..." if [ ! -f $PID_PATH_NAME ]; then cd $HOME nohup java -jar $PATH_TO_JAR --spring.config.location=application-production.yml > $LOG 2> $ERROR_LOG & echo $! > $PID_PATH_NAME echo "$SERVICE_NAME started ..." else echo "$SERVICE_NAME is already running ..." fi ;; stop) if [ -f $PID_PATH_NAME ]; then PID=$(cat $PID_PATH_NAME); echo "$SERVICE_NAME stoping ..." kill $PID; echo "$SERVICE_NAME stopped ..." rm $PID_PATH_NAME else echo "$SERVICE_NAME is not running ..." fi ;; restart) if [ -f $PID_PATH_NAME ]; then PID=$(cat $PID_PATH_NAME); echo "$SERVICE_NAME stopping ..."; kill $PID; echo "$SERVICE_NAME stopped ..."; rm $PID_PATH_NAME echo "$SERVICE_NAME starting ..." cd $HOME/current nohup java -jar $PATH_TO_JAR --spring.config.location=application-production.yml > $LOG 2> $ERROR_LOG & echo $! > $PID_PATH_NAME echo "$SERVICE_NAME started ..." else echo "$SERVICE_NAME is not running ..." fi ;;esac
保存脚本
赋予脚本可执行权限 sudo chmod +x etc/init.d/test
把需要部署的jar包放到脚本中HOME
的目录下,然后就可以使用service的方式部署或杀死项目了。
sudo service test startsudo service test stopsudo service test restart
阅读全文
0 0
- 使用Service部署Spring Boot
- 转载:Spring Boot (十六):使用Jenkins部署Spring Boot
- 使用Docker部署 spring-boot maven应用
- spring boot 使用jrebel配置热部署
- springboot(十六):使用Jenkins部署Spring Boot
- 使用Docker部署 spring-boot maven应用
- springboot(十六):使用Jenkins部署Spring Boot
- 部署Spring Boot应用
- 部署spring boot应用
- spring boot 热部署
- spring boot web部署
- Spring Boot热部署
- 部署Spring Boot应用
- 部署Spring Boot应用
- spring boot 热部署
- spring boot 部署、启动
- spring boot热部署
- spring boot热部署
- Python学习之dictionary
- @那些想要转行AI的人:送你一份人工智能入门指南
- 数据结构中的栈
- 机器学习基本概念
- 机器学习算法-K近邻算法(1)
- 使用Service部署Spring Boot
- 决策树
- 用户不在sudoers文件中的解决方法
- 小白教学式,八皇后问题,Python生成器解法
- 联想昭阳E42-80高通QCA9377安裝Ubuntu14.04无法使用Wi-Fi解決方法
- 被QLIST吊打
- Java如何从HttpServletRequest中读取HTTP请求的body
- Java工具类整理
- dedecms调用当前文档路径