在 maven 包阶段,我构建了我的应用程序的 docker 映像:
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>${version.dockerfile-plugin}</version>
<executions>
<execution>
<id>default</id>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<configuration>
<repository>archetype/thorntail</repository>
<tag>${project.version}</tag>
<buildArgs>
<JAR_FILE>${project.build.finalName}-thorntail.jar</JAR_FILE>
</buildArgs>
</configuration>
</plugin>
在我的集成测试中,我使用我的应用程序的这个图像,如下所示:
@Container
private static GenericContainer apiContainer =
new GenericContainer("archetype/thorntail:0")
.withExposedPorts(THORNTAIL_WEB_PORT)
.waitingFor(
Wait.forHttp("/base/api/hello")
);
我的问题:如何向我的容器发出信号,表明它正在集成测试中运行,因此应该使用不同的数据库,例如 H2?