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应用的环境变量,确保应用在不同环境中的正确运行。
热门推荐
《老九门2》正式启动,赵丽颖回归呼声高,或二搭陈伟霆更是惊喜
小柴胡颗粒治疗感冒吗?使用指南与注意事项
史上最全面的复盘知识全景图
基于YOLOv5的Robomaster EP自动辅助瞄准系统设计与实现
明日方舟终末地世界观盘点:塔卫二星球上的文明遗迹与天使威胁
揭秘816工程:重庆地下核工厂的前世今生
电动车换电池指南:这些"能"与"不能"你必须知道
学校禁止戴手表是否违法
学校禁止戴手表是否违法?
是修还是换,事故车维修标准说了算?
专家解读:喝芝麻油能否治疗便秘?
急性脑梗死DWI高信号的消失机制与时间进程
螺口样品瓶的材料选择与密封技术
什么是粤Z车牌:港澳车辆进出广东的专属标识
十字军200年八次东征,是圣战还是侵略?一文看懂十字军深层原因
多能互补、光伏+光热项目配置分析及建议
压力与重力:两种力量的奥秘
芒果、香蕉、哈密瓜、椰子、菠萝:这些水果的嘌呤含量高吗
尿酸高可以吃芒果吗?这些水果更适合你
有蓬松感的洗发水,有蓬松感的洗发水推荐
Vue 3.x 新特性:Composition API 与更简洁的代码结构
车蜡的选择技巧有哪些?这种选择方法有哪些需要注意的细节?
三国时期命名规则的背后:名字只有两个字
办公椅后仰调节全攻略:四步打造舒适坐姿
研究揭示:CO2/R41混合物是电动汽车热泵最优环保制冷剂
西红柿打卤面怎么做好吃又简单,简单几步就搞定
中国最难爬的5座山,有生之年一定要爬一次,你爬过几座?
成为全球空港“节水标杆”,大兴机场做对了什么?
“吃鸡”有风险!女子误吞4.5厘米长鸡骨头险些致命
2024年中考首日——晋江超2.5万名考生提笔逐梦