我有一个带有一些预定义java的基础java镜像。_选择作为环境变量。如何在插件中使用它们?
com.google.cloud.tools
jib-maven-plugin
1.8.0
${docker.registry}java:11
${docker.registry}portal-backend:${dockerfile.tag}
# This will fail
$JAVA_OPTS发布于 2021-02-25 17:29:36
我的解决方案是从jib-maven-plugin配置中删除JVM内存参数。相反,我定义JAVA_TOOL_OPTIONS环境变量(示例:JAVA_TOOL_OPTIONS='-Xss=512k')用于容器(例如:在docker-compose配置文件中)。
请注意,这个环境变量根本不需要在基础镜像中定义。
发布于 2021-01-14 15:46:32
变量定义如下
选项1: Java系统属性(VM参数)
重要的是,-D参数必须在application.jar之前,否则将无法识别它们。
java -jar -Dspring.profiles.active=prod application.jar
选项2:程序参数
java -jar application.jar --spring.profiles.active=prod --spring.config.location=c:\config
entryPoint改变:当使用jib作为maven插件时-改变spring配置文件的加载位置:然后将POM传递到容器内,但jib插件似乎没有选择它。因此,需要在pom中对位置的参数访问进行以下更改:
com.google.cloud.tools
jib-maven-plugin
2.2.0
image-url
${maven.build.timestamp}
com.package.SpringBootMainClass
--spring.config.location=/demo/location/application.yml
package
buildJib-maven插件在pom中如何传递参数,只是通过pom展示了一种方法,jib不从spring app的入口点拾取参数,这就是为什么我想提供另一种同样的方法。如上所述,答案是没有的。
https://stackoverflow.com/questions/59357410
复制相似问题