docker 运行 java jar_docker 容器运行 jar,读取jar 外配置文件

现在有Dockerfile 配置文件内容如下:

40d8b92339a2b72dccf81ae0315c3571.png

执行下面的命令,即可以将打包好的镜像文件,创建运行为容器:

docker run --name mfile-1.0.13 -p 8090:8090 -d -v /app/mfileconf/application.properties:/opt/gf-mfile/application.properties -v /app/logs:/opt/gf-mfile/logs docker.gf.com.cn/gravityforce/mfile /bin/bash

问题

因为,现在要将log4j的配置文件放到,jar 包文件外,故而,需要修改Dockerfile 配置文件,最后执行的java 命令(ENTRYPOINT)。

在windows 环境下,执行下面的命令:

java.exe -cp .;gf-mfile.jar org.springframework.boot.loader.JarLauncher

才能将jar 包外的log4j配置文件读取。

故而,本人将Dockerfile 配置文件最后一句改为下面这样:

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-cp .;","gf-mfile.jar org.springframework.boot.loader.JarLauncher"]

再执行上面,docker run ……命令,发现容器,一旦创建就关闭。

请问: Dockerfile 文件应该怎么修改,才能让容器运行的时候能够读取到jar 包外的log4j 配置文件? 请大神赐教,感激不尽……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值