首先声明,这个自动部署,只是把配置文件单独放在服务器上进行配置,修改了配置文件,仍然需要重启!只是减少了不必重新打包这一步!
脚本见附件。
1.总结脚本原理
执行脚本->获取同级目录下的包->读取包的信息->判断是否在运行->在运行的杀掉->执行启动命令,并指定配置文件路径->打印执行是否成功
2.SpringBoot加载外部文件原理
1)SpringBoot从application.properties或者application.yml读取配置.
2)SpringApplication会默认将命令行选项参数转换为配置信息.
3)从命令行指定配置项的优先级最高(可以通过setAddCommandLineProperties来禁用).
3.总结优点
1)修改了配置文件信息(例,修改数据库密码)需在服务器的配置文件上修改,重启服务,无需重新打包。
2)给测试、UAT等多个环境发版,只需打一次包。无需每个环境改一次变量重新打包。
3)可复用,脚本中只配置了操作同级目录的jar或war,不包含任何项目信息。
4.脚本详细介绍
if [ -e *.jar -o -e *.war ];then 判断是否存在jar包或war包,-e:做判断,-0:或者。
SERVER_JAR=ls -l |awk '{print $9}'| grep .jar$
读取jar包信息,并把第9行信息(jar名字)赋值给server_jar变量。
pid=$(ps -ef | grep $SERVER_JAR | grep -v grep | awk '{print $2}') 获取jar包的进程号(第2行信息),赋值给pid变量。grep -v grep:排除当前命令的进程号。
if ps -p $pid> /dev/null 判断进程是否在运行。> /dev/null:把返回信息扔进黑洞。
kill -9 ${pid} 干掉进程。
nohup java $JAVA_OPTS -jar $SERVER_JAR --spring.config.location=./application.yml >/dev/null 2>&1 & 启动jar包,并指定配置文件地址。
if [[ $? -ne 0 ]]; then 判断上一步命令是否正常执行,正常返回0,不正常返回不等于0的数字(一般是1)。ne:不等于。
exit 1 返回不等于1的,告诉系统执行异常了。
相关推荐
@@方式可以引用springboot非默认配置文件(即其他配置文件)中的变量; springboot默认配置文件是 src/main/resources/application.properties 补充知识:springboot项目使用@Value注解获取配置文件中的配置信息 ...
springboot配置文件yml1
springboot配置文件模板:包括多环境开发布置,端口号配置,全局jackson配置,mysql数据库配置,oracle数据库配置,连接池配置,redis配置,redis链接池的配置,设置上传文件大小限制配置,全局格式化时间配置,https证书配置...
springboot+minio文件服务器的demo,开箱即用 springboot+minio文件服务器的demo,开箱即用 springboot+minio文件服务器的demo,开箱即用 springboot+minio文件服务器的demo,开箱即用 springboot+minio文件服务器的demo...
springboot入门实例2:springboot配置文件的位置和加载优先级 博客地址:https://blog.csdn.net/u010476739/article/details/98380095
springboot配置文件的学习(含动态配置)&EnvironmentPostProcessor;接口的用法
学习springboot时,搜索的springboot全局配置文件,其内容有各种配置样式
springboot 2.0.0 版本及更高版本的配置+每个配置的含义 。
springboot读取配置文件.rar springboot读取配置文件.rar springboot读取配置文件.rar
该资源为“【SpringBoot探索三】添加配置文件”博客的参考案例,欢迎下载交流
springboot集成netty实现代理服务器,实现http和https请求的代理功能
springboot中的配置文件样板,包含了多环境配置,数据库及连接池的配置,redis配置,格式化时间,json配置,上传文件大小配置以及https的配置,可供参考
springboot-layui 调用外部文件服务器实现上传下载功能
Springboot实现文件上传,设置端口号,文件路径,返回界面调用图片得直接路径
SpringBoot2.x properties全部配置文件总计1500+,每个配置文件写有中文解释。适用于系统学习springboot 深入学习springboot的同学。
springboot 官方完整的配置文件。共有1500多个配置项。
最全的springboot配置文件,基本上springboot中所需要的配置都可以找到。总共有一千多行,懂技术的人下载直接搜索自己需要的即可。
很好用的springboot插件很好用的springboot插件很好用的springboot插件很好用的springboot插件
application.properties的配置文件,对mybatis的整合,对mvc页面模板的配置等