将运行时参数传递给DockerFile中的JAR无法运行

时间:2019-04-23 13:00:56

标签: java docker jar

Dockerfile:

FROM anapsix/alpine-java
ADD abc-server-application.jar abc-server-application.jar
EXPOSE 9199

ENTRYPOINT ["java","-Dkafka_delay_time=20","-DlogsInclude=docker-logback.xml","-jar","abc-server-application.jar"]

/home/user/abc中-我放置了JAR和Dockerfile以及docker-logback.xml文件

构建图像:

[root@CP9909abc#]docker build -t abc-server-application:v1.0 .

运行:

8090是application.yml中配置的端口

[root@CP9909abc#]docker run -p 9199:8090 abc-server-application:v1.0 -it /bin/bash &

现在,应用程序未运行。它给出类似-

的消息
  

ch.qos.logback.core.joran.util.ConfigurationWatchListUtil@277050dc-   将[file:/docker-logback.xml]添加到配置监视列表。   12:36:51,898 | -ch.qos.logback.core.joran.action.IncludeAction中的警告   -无法在ch.qos.logback.classic.joran.action.ConfigurationAction中打开[file:/docker-logback.xml] 12:36:51,898 | -INFO   配置。

在入口点,我尝试为docker-logback.xml提供绝对路径/相对路径,但是它不起作用。关于如何将日志文件传递回Docker中的JAR的任何建议?

1 个答案:

答案 0 :(得分:0)

我没有看到docker-logback.xml被使用Dockerfile复制,也没有卷挂载。使用以下语句复制它,然后尝试运行图像-

FROM anapsix/alpine-java
ADD abc-server-application.jar abc-server-application.jar
COPY docker-logback.xml ./
EXPOSE 9199
ENTRYPOINT ["java","-Dkafka_delay_time=20","-DlogsInclude=docker-logback.xml","-jar","abc-server-application.jar"]
相关问题