我试图在docker容器上运行java应用程序,其中java程序的jvm参数是动态的。
Dockerfile:
FROM amazonlinux
ADD http://company.com/artifactory/bins-release-local/com/marc/1.3.1/marc-1.3.1.tar.gz /root/
ADD log4j2.xml /root/
RUN tar xzf /root/marc-1.3.1.tar.gz -C /root && rm -f /root/marc-1.3.1.tar.gz
RUN yum install -y java
ENTRYPOINT ["/bin/bash", "-c", "/usr/bin/java", "${JVM_ARGS}", "-jar", "/root/marc.jar"]
我尝试像这样运行容器:
docker run --rm -it --env-file jvm_args.env -e CLIENT=google moshe/java:latest
而jvm_args.env
是:
JVM_ARGS=-d64
-Dicmq=${CLIENT}
-Dlog4j.configurationFile=/root/log4j2.xml
-server
我似乎无法让它发挥作用。我需要客户端是动态的,JVM_ARGS应该包含客户端。 想法?