如何将系统属性传递给 Docker 容器?

2022-09-02 03:45:12

所以我知道你可以使用-e将环境变量传递给docker容器,就像这样:

docker run -it -e "var=var1" myDockerImage

但是我需要将系统属性传递给 docker 容器,因为这是我运行 JAR 的方式:

java -Denvironment=dev -jar myjar.jar 

那么如何在 Docker 中传递 -D System 属性呢?喜欢:

docker run -it {INSERT Denvironment here} myDockerImage

答案 1

在 java 命令上使用传递到容器中的变量:

docker run -it -e "ENV=dev" myDockerImage
java -Denvironment=$ENV -jar myjar.jar

答案 2

如果在Tomcat下运行,另一种方法是在Dockerfile中设置系统变量,如下所示:ENV JAVA_OPTS

ENV JAVA_OPTS="-Djavax.net.ssl.trustStore=C:/tomcatDev.jks -D_WS_URL=http://some/url/"

希望它有帮助!


推荐