一、该问题的重现步骤是什么?
我所有的biz微服务是在一个目录下,使用docker-compose部署的,如图:
docker-compose config,可以查看生效的情况,如下:
2.
3.
launcher文件中我是这样配的,也尝试过全部注释,但是都没用,始终如下图:
日志如下:
二、你期待的结果是什么?实际看到的又是什么?
我主要想知道:
(1)bladex对于biz工程,配置加载的判断逻辑在哪里?核心逻辑是怎么样的。
(2)我整个配置过程,究竟为何biz的微服务指定Profile=test为何不成功,问题出在哪里?
麻烦翼总指点迷津。。。。谢谢。
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
按理说dockerFile配置了--spring.profiles.active=test,不用config配置都可以直接读取到test环境了。
你先用jar包的形式跑一下命令看看 java -jar app.jar --spring.profiles.active=test,如果这样也不行,你把jar包发我邮箱看看 bladejava@qq.com。
如果jar可以,docker不行,你再看下bladex自带的服务,是否能启动到test环境。
环境变量的判断逻辑如下
我登录到容器里面,执行:java -jar app.jar --spring.profiles.active=test,发现环境变量是生效的。
我进到生产环境的服务器里,查看bladex的启动日志,发现走得也是test,如图:
在测试过程中,发现:
究竟应该咋写呢?
我还发现配置在command:下的参数全部都不起作用ELK的地址也无法配置生效。奇怪。。。
进一步查询发现,好像这个值有问题。
dockerfile里改为:
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "app.jar"]
就可以了。
请问楼主,到底怎么解决呢。
扫一扫访问 Blade技术社区 移动端