Java 是否可以在Docker ComposeContainer的Docker compose文件中使用本地Docker映像?

Java 是否可以在Docker ComposeContainer的Docker compose文件中使用本地Docker映像?,java,maven,docker,docker-compose,testcontainers,Java,Maven,Docker,Docker Compose,Testcontainers,在我的docker-compose.yaml文件中,我使用图像“我的服务”(以及其他工作正常的远程图像) 通常,我使用io.fabric8 docker maven插件与maven一起构建“我的服务”映像 我的Dockerfile: FROM vertx/vertx3-alpine ENV VERTICLE_HOME /opt/lib ENV NAME my-service ENV EXEC_JAR_NAME my-service.jar COPY target/my-service-1.0-S

在我的docker-compose.yaml文件中,我使用图像“我的服务”(以及其他工作正常的远程图像)

通常,我使用io.fabric8 docker maven插件与maven一起构建“我的服务”映像

我的Dockerfile:

FROM vertx/vertx3-alpine
ENV VERTICLE_HOME /opt/lib
ENV NAME my-service
ENV EXEC_JAR_NAME my-service.jar
COPY target/my-service-1.0-SNAPSHOT.jar $VERTICLE_HOME/$EXEC_JAR_NAME
COPY target/lib $VERTICLE_HOME
COPY src/main/resources/settings.json /etc/company/myservice/settings.json
ENTRYPOINT ["sh", "-c"]
CMD ["java -cp $VERTICLE_HOME/$EXEC_JAR_NAME com.company.myservice.MyVerticle"]
有没有办法使用Testcontainers for docker compose中的DockerComposeContainer来使用我的本地服务映像

这是我的测试设置

public class MyServiceIT {
    @ClassRule
    public static DockerComposeContainer compose =
            new DockerComposeContainer(new File("src/test/resources/docker-compose.yml"));
目前我收到以下错误消息,因为它正在使用本地图像


7:15:34.282[tc-okhttp-stream-454305524]INFO这不是一条错误消息,但如果
docker compose pull
失败,只是一条警告,请参阅


您还可以让Docker Compose为您构建图像(尽管强烈建议在这种情况下使用
和LocalCompose(true)

这不是错误消息,但如果
Docker Compose pull
失败,只是一个警告,请参阅


您还可以让Docker Compose为您构建图像(尽管强烈建议使用
和LocalCompose(true)
在这种情况下)

谢谢!你让我意识到我的容器实际上是正确的。我只是期待更多的日志。在测试运行时,我可以通过
docker ps
找到并进入我的容器,以找到容器ID,然后
docker exec-it bash
。在命令行中运行
docker compose up
时,是否有一种方法可以获得更多的输出?我试着使用
和tailchildcontainers(true)
但是这似乎没有改变任何事情。给我指出了正确的方向。虽然使用DockerComposeContainer时,您似乎将
与logconsumer(servicename,logconsumer)
一起使用,而不是
followOutpu(logconsumer)
谢谢!你让我意识到我的容器实际上是正确的。我只是期待更多的日志。在测试运行时,我可以通过
docker ps
找到并进入我的容器,以找到容器ID,然后
docker exec-it bash
。在命令行中运行
docker compose up
时,是否有一种方法可以获得更多的输出?我试着使用
和tailchildcontainers(true)
但是这似乎没有改变任何事情。给我指出了正确的方向。虽然使用DockerComposeContainer时,您似乎将
与logconsumer(servicename,logconsumer)
一起使用,而不是
followOutpu(logconsumer)
public class MyServiceIT {
    @ClassRule
    public static DockerComposeContainer compose =
            new DockerComposeContainer(new File("src/test/resources/docker-compose.yml"));