码迷,mamicode.com
首页 > 编程语言 > 详细

springboot之docker启动参数传递

时间:2018-04-18 16:25:29      阅读:4561      评论:0      收藏:0      [点我收藏+]

标签:build   配置文件   实现   ash   jvm参数   containe   情况下   AC   cto   

这几天有网友问,如何在使用docker的情况下传递spring.profiles.active=test,也就是说springboot切换配置文件。以往我们直接通过java启动jar的时候,直接跟上--spring.profiles.active=test或者利用jvm参数-Dspring.profiles.active=test来传递。我写一些命令吧。

非docker下springboot切换配置文件

java -jar test.jar --spring.profiles.active=test #第一种情况切换配置文件

java -Dspring.profiles.active=test -jar test.jar #第二种情况切换配置文件

有朋友会疑惑,通过jvm参数怎么可以切换呢,其实springboot是支持的哦。

docker下springboot切换配置文件

docker封装了springboot后切换会多一些步骤,其实也不是很难。笔者找了网上好多文章,并没有看到通过com.spotify:docker-maven-plugin这个docker打包插件实现的环境变量传递参数,也可能是太简单了,没人写,但是我看到好多人需要,我还是写一下吧。但是网上有通过Dockerfile实现的Env变量传递的。下面我贴出pom中的打包插件代码:

请注意env节点和entryPoint的变化

com.spotifydocker-maven-plugin0.4.11pumelo/${project.artifactId}-${version}frolvlad/alpine-oraclejdk8:slim""[ "sh", "-c", "java $JAVA_OPTS -jar /${project.build.finalName}.jar" ]/${project.build.directory}${project.build.finalName}.jar

测试

从新打包镜像后,运行

docker run -e JAVA_OPTS=‘-Xms128m -Xmx256m -Dspring.profiles.active=prod‘ -it pumelo/test-1.0.0 /bin/bash

这样就可以通过jvm参数来切换springboot的配置文件啦。

技术分享图片

感谢各位看官捧场。

springboot之docker启动参数传递

标签:build   配置文件   实现   ash   jvm参数   containe   情况下   AC   cto   

原文地址:https://www.cnblogs.com/bigben0123/p/8875573.html

(1)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!