testcontainers-java icon indicating copy to clipboard operation
testcontainers-java copied to clipboard

[Bug]: ComposeContainer with containerized docker compose does not wait for command to finish

Open paloliska opened this issue 1 year ago • 1 comments

Module

Core

Testcontainers version

1.19.3

Using the latest Testcontainers version?

No

Host OS

linux

Host Arch

x86

Docker version

docker-compose Docker Compose version v2.23.0

What happened?

Containerized docker compose does not wait for commands to finish as could be seen in logs

Relevant log output

INFO  08:26:50.434 [tc.do.0.2] Container docker:24.0.2 started in PT15.247646557S
    INFO  08:26:50.434 [tc.do.0.2] Docker Compose container is running for command: compose down -v
    INFO  08:26:50.435 [tc.do.0.2] Docker Compose has finished running
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-localization-service-1  Stopping
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-proxy-simulator-1  Stopping
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-proxy-simulator-1  Stopped
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-proxy-simulator-1  Removing
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-proxy-simulator-1  Removed
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-sale-point-1  Stopping
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-localization-service-1  Stopped
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-localization-service-1  Removing
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-localization-service-1  Removed
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-sale-point-1  Stopped
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-sale-point-1  Removing
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Container itwvm1fc-sale-point-1  Removed
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Network itwvm1fc_default  Removing
    INFO  08:26:50.436 [tc.do.0.2] STDERR:  Network itwvm1fc_default  Removed

Additional Information

Using local docker compose, it works as expected:

 INFO  09:08:21.884 [tc.docker] Local Docker Compose is running command: compose down -v
    INFO  09:08:22.016 [tc.docker]  Container itor1mpi-proxy-simulator-1  Stopping
    INFO  09:08:22.016 [tc.docker]  Container itor1mpi-localization-service-1  Stopping
    INFO  09:08:22.328 [tc.docker]  Container itor1mpi-proxy-simulator-1  Stopped
    INFO  09:08:22.328 [tc.docker]  Container itor1mpi-proxy-simulator-1  Removing
    INFO  09:08:22.340 [tc.docker]  Container itor1mpi-proxy-simulator-1  Removed
    INFO  09:08:22.340 [tc.docker]  Container itor1mpi-sale-point-1  Stopping
    INFO  09:08:22.989 [or.te.co.ComposeDelegate] [/itor1mpi-sale-point-1] STDOUT: INFO  2023-12-14 09:08:22.962 : The application is going to be destroyed... - [][][][][][cz.mo.be.sa.da.InitializationService][main]
    INFO  09:08:23.092 [or.te.co.ComposeDelegate] [/itor1mpi-localization-service-1] STDOUT: 2023-12-14 09:08:23.088 DEBUG ---          [Koin] : |- (-) Scope - id:'_root_' [] [KtorShutdownHook]
    INFO  09:08:23.093 [or.te.co.ComposeDelegate] [/itor1mpi-localization-service-1] STDOUT: 2023-12-14 09:08:23.089 DEBUG ---     Application : Application stopping: io.ktor.server.application.Application@22396a29 [] [KtorShutdownHook]
    INFO  09:08:23.093 [or.te.co.ComposeDelegate] [/itor1mpi-localization-service-1] STDOUT: 2023-12-14 09:08:23.089 DEBUG ---     Application : Application stopped: io.ktor.server.application.Application@22396a29 [] [KtorShutdownHook]
    INFO  09:08:23.243 [or.te.co.ComposeDelegate] [/itor1mpi-sale-point-1] STDOUT: INFO  2023-12-14 09:08:23.241 : sale-point stopped in 0.831s - [][][][][][io.quarkus][main]
    INFO  09:08:23.304 [tc.docker]  Container itor1mpi-localization-service-1  Stopped
    INFO  09:08:23.304 [tc.docker]  Container itor1mpi-localization-service-1  Removing
    INFO  09:08:23.316 [tc.docker]  Container itor1mpi-localization-service-1  Removed
    INFO  09:08:23.740 [tc.docker]  Container itor1mpi-sale-point-1  Stopped
    INFO  09:08:23.740 [tc.docker]  Container itor1mpi-sale-point-1  Removing
    INFO  09:08:23.751 [tc.docker]  Container itor1mpi-sale-point-1  Removed
    INFO  09:08:36.467 [tc.docker]  Network itor1mpi_default  Removing
    INFO  09:08:36.514 [tc.docker]  Network itor1mpi_default  Removed
    INFO  09:08:36.518 [tc.docker] Docker Compose has finished running

paloliska avatar Dec 14 '23 10:12 paloliska