Spring Boot + Docker环境变量配置详解
创作时间:
作者:
@小白创作中心
Spring Boot + Docker环境变量配置详解
引用
CSDN
1.
https://blog.csdn.net/xiaoguangtouqiang/article/details/83540853
在Spring Boot项目中,如何通过Docker配置不同环境的环境变量是一个常见的需求。本文将详细介绍在开发环境、Gradle打包以及Docker打包等不同场景下如何进行环境变量的配置。
开发环境IDE配置
在开发环境中,可以通过IDE的环境变量参数进行配置。例如,在IntelliJ IDEA中,可以按照以下方式配置:
这样配置后,项目启动时就会使用application-test.yml
中的配置。
Gradle打包配置
通过Gradle打包时,可以使用-P
参数来指定打包后的JAR使用哪种环境配置。例如:
gradlew -Pprod bootWar
对于JHipster生成的项目,如果需要添加test
环境配置,需要修改项目的Gradle文件。具体步骤如下:
- 在
build.gradle
中添加新的环境属性配置:
- 创建
profile_test.gradle
文件,可以复制prod
的配置并修改相关参数:
def profiles = 'test'
- 在
processResources
任务中添加环境变量替换逻辑:
processResources {
filesMatching('**/application.yml') {
filter {
it.replace('#project.version#', version)
}
filter {
it.replace('#spring.profiles.active#', profiles)
}
}
}
Docker打包配置
使用Docker Compose打包应用时,可以通过环境变量参数进行配置。这个参数会覆盖Gradle中的参数配置。例如:
docker-compose up -d --build
同时,还可以通过以下方式配置Docker环境变量:
- 在Dockerfile中设置启动命令:
CMD ["java", "-Djava.security.egd=file:/dev/./urandom", "-Dspring.profiles.active=dev", "-jar", "rest-api.jar"]
- 在运行Docker镜像时通过命令行参数加载环境变量:
docker run -d -p 8080:8080 -e "SPRING_PROFILES_ACTIVE=dev" --name rest-api dockerImage:latest
通过以上几种方式,可以灵活地在不同场景下配置Spring Boot应用的环境变量,确保应用在不同环境中的正确运行。
热门推荐
神话:黑白无常
金属烤瓷牙和全瓷牙的区别:哪种更适合你?
食管有异物感是什么原因?这3种病都有可能
缓解胃部不适的有效方法与生活习惯调整指南
桂林不止风景,吃的也不能落下—桂林三宝
为何中国古代看上去侵略性不强,却有那么大的领土?其实不难理解
上海金山区推出“共享头盔”,覆盖全区16个劝导站和所有街镇
“共享头盔”好借好还 守护出行安全
Excel表格中顶端标题行的设置方法详解
工厂访客管理:保障安全、提高效率的关键措施
巴厘岛的可持续旅游业兴旺发展:中小企业利用知识产权促进增长
植物也会“思考”吗?
海南神秘乩童:探寻古法巫术的奇异之旅
这些景区对全国公安民警辅警、学生群体免票优惠开放!
使用牙线真的会让牙缝变大吗?一文带你了解真相
地铁事故应急处置程序:保障乘客安全的重要措施
如何使用SFTP命令进行文件传输?
科普中国-萤石
萤石:一种神奇的矿物
海南乐东旅游攻略一日游:路线、价格及必去景点推荐
历史上四大美女都是谁?她们最后都是怎么死的?真是红颜薄命吗?
雪橇、雪车、钢架雪车,三个项目的区别与特点
喝香油能通便吗?专家解析其作用机制与使用注意事项
篮球场地标准尺寸详细图解与画法
平台接口和数据接入标准:如何优化您的搜索引擎策略?
民国才女萧红:从私奔到文学成就,坎坷人生中的独立与追求
什么是终本?终本后的案件怎么管理?
一本二本合并意味着什么?附全国各省本科分数线(2025参考)
婚后车贷谁来还?婚前债务相关问题全解析
婚后怎样还贷才不算共同财产