我有以下 spring-boot-maven-plugin 配置:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<docker>
<host>tcp://<docker-host>:2375</host>
</docker>
<image>
<buildpacks>
<buildpack>gcr.io/paketo-buildpacks/amazon-corretto:latest</buildpack>
<buildpack>paketo-buildpacks/java</buildpack>
</buildpacks>
<verboseLogging>true</verboseLogging>
<pullPolicy>IF_NOT_PRESENT</pullPolicy>
<env>
<BP_DEBUG>true</BP_DEBUG>
</env>
<bindings>
<binding>${basedir}/bindings:/platform/bindings</binding>
</bindings>
</image>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<classifier>executable</classifier>
</configuration>
</execution>
</executions>
</plugin>
我想将
docker host
和bindings
作为args传递给mvn spring-boot:build-image
我尝试了
-Dspring-boot.build-image.dockerHost
、-Dspring-boot.build-image.docker.host
、-Dspring-boot.dockerHost
等,但是,对我来说没有任何效果。
我还没有尝试绑定:${basedir}/bindings:/platform/bindings
我们的要求是将
docker host
和 bindings
都设置为 mvn spring-boot:build-image
args,以尽可能保持 pom.xml
的通用性。
不确定我在这里错过了什么?
附言将
DOCKER_HOST
设置为 env
变量有效。
此外,我可以使用
${docker.host}
作为主机,使用 ${binding}
进行绑定,然后运行以下命令:
mvn spring-boot:build-image -Ddocker.host=mydockerhost:2375
-Dbinding="my/absolute-path/to/bindings:platform/bindings"
我想这不是合适的解决方案。
不幸的是,我不认为你可以做得比你已经设想的更好(创建你自己的 maven pom 变量以将值注入插件设置)
回到您的问题,您可以通过代码或文档看到无法配置
dockerHost
或bindings
(尽管正如您提到的env变量DOCKER_HOST
是一个选项) 通过 Spring 属性。
希望有帮助!