Skip to content

Long delay between docker checking and container starting #4106

@tsydd

Description

@tsydd

gradle dependency org.testcontainers:postgresql:1.15.3 is used
postgres is referenced using

@TestPropertySource(properties = {"spring.datasource.url=jdbc:tc:postgresql:13.2-alpine:///db"})

Despite the container startup is fast on local machine, it takes more then 3 minutes to launch Postgres on Bamboo

The output of TESTCONTAINERS_CHECKS_DISABLE=true ./gradlew test -i is

...
build	16-May-2021 23:03:09	    2021-05-16 23:03:09,427 INFO  [Test worker     ] o.t.d.DockerClientProviderStrategy - Loaded org.testcontainers.dockerclient.UnixSocketClientProviderStrategy from ~/.testcontainers.properties, will try it first
build	16-May-2021 23:03:09	    2021-05-16 23:03:09,856 INFO  [Test worker     ] o.t.d.DockerClientProviderStrategy - Found Docker environment with local Unix socket (unix:///var/run/docker.sock)
build	16-May-2021 23:03:09	    2021-05-16 23:03:09,857 INFO  [Test worker     ] org.testcontainers.DockerClientFactory - Docker host IP address is localhost
build	16-May-2021 23:03:09	    2021-05-16 23:03:09,885 INFO  [Test worker     ] org.testcontainers.DockerClientFactory - Connected to docker: 
build	16-May-2021 23:03:09	      Server Version: 18.09.4
build	16-May-2021 23:03:09	      API Version: 1.39
build	16-May-2021 23:03:09	      Operating System: Ubuntu 18.04.2 LTS
build	16-May-2021 23:03:09	      Total Memory: 32051 MB
build	16-May-2021 23:03:09	    2021-05-16 23:03:09,888 INFO  [Test worker     ] o.t.utility.ImageNameSubstitutor - Image name substitution will be performed by: DefaultImageNameSubstitutor (composite of 'ConfigurationFileImageNameSubstitutor' and 'PrefixingImageNameSubstitutor')
build	16-May-2021 23:03:13	    2021-05-16 23:03:13,257 INFO  [Test worker     ] org.testcontainers.DockerClientFactory - Ryuk started - will monitor and terminate Testcontainers containers on JVM exit
build	16-May-2021 23:06:18	    2021-05-16 23:06:18,883 INFO  [Test worker     ] docker[postgres:13.2-alpine] - Pulling docker image: postgres:13.2-alpine. Please be patient; this may take some time but only needs to be done once.
build	16-May-2021 23:06:20	    2021-05-16 23:06:20,718 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Starting to pull image
build	16-May-2021 23:06:20	    2021-05-16 23:06:20,769 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  0 downloaded,  0 extracted, (0 bytes/0 bytes)
build	16-May-2021 23:06:22	    2021-05-16 23:06:21,960 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  7 pending,  1 downloaded,  0 extracted, (1 KB/? MB)
build	16-May-2021 23:06:22	    2021-05-16 23:06:22,069 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  6 pending,  2 downloaded,  0 extracted, (30 KB/? MB)
build	16-May-2021 23:06:22	    2021-05-16 23:06:22,308 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  5 pending,  3 downloaded,  0 extracted, (1 MB/? MB)
build	16-May-2021 23:06:22	    2021-05-16 23:06:22,624 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  5 pending,  3 downloaded,  1 extracted, (2 MB/? MB)
build	16-May-2021 23:06:23	    2021-05-16 23:06:22,974 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  5 pending,  3 downloaded,  2 extracted, (2 MB/? MB)
build	16-May-2021 23:06:23	    2021-05-16 23:06:22,977 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  4 pending,  4 downloaded,  2 extracted, (2 MB/? MB)
build	16-May-2021 23:06:23	    2021-05-16 23:06:23,277 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  4 pending,  4 downloaded,  3 extracted, (3 MB/? MB)
build	16-May-2021 23:06:24	    2021-05-16 23:06:24,095 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  3 pending,  5 downloaded,  3 extracted, (11 MB/? MB)
build	16-May-2021 23:06:24	    2021-05-16 23:06:24,268 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  2 pending,  6 downloaded,  3 extracted, (13 MB/? MB)
build	16-May-2021 23:06:24	    2021-05-16 23:06:24,809 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  1 pending,  7 downloaded,  3 extracted, (19 MB/? MB)
build	16-May-2021 23:06:28	    2021-05-16 23:06:28,273 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  8 downloaded,  3 extracted, (59 MB/59 MB)
build	16-May-2021 23:06:29	    2021-05-16 23:06:29,622 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  8 downloaded,  4 extracted, (59 MB/59 MB)
build	16-May-2021 23:06:30	    2021-05-16 23:06:29,983 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  8 downloaded,  5 extracted, (59 MB/59 MB)
build	16-May-2021 23:06:30	    2021-05-16 23:06:30,392 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  8 downloaded,  6 extracted, (59 MB/59 MB)
build	16-May-2021 23:06:30	    2021-05-16 23:06:30,732 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  8 downloaded,  7 extracted, (59 MB/59 MB)
build	16-May-2021 23:06:31	    2021-05-16 23:06:31,195 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pulling image layers:  0 pending,  8 downloaded,  8 extracted, (59 MB/59 MB)
build	16-May-2021 23:06:31	    2021-05-16 23:06:31,398 INFO  [docker-java-stream-1486292379] docker[postgres:13.2-alpine] - Pull complete. 8 layers, pulled in 10s (downloaded 59 MB at 5 MB/s)
build	16-May-2021 23:06:31	    2021-05-16 23:06:31,404 INFO  [Test worker     ] docker[postgres:13.2-alpine] - Creating container for image: postgres:13.2-alpine
build	16-May-2021 23:06:37	    2021-05-16 23:06:37,379 INFO  [Test worker     ] docker[postgres:13.2-alpine] - Starting container with ID: 43e2ffcf9e1b3c6e9b8c9e0645b3dc96e06667ba9e4e941fa224e0a0a5fe8f7b
build	16-May-2021 23:06:38	    2021-05-16 23:06:38,515 INFO  [Test worker     ] docker[postgres:13.2-alpine] - Container postgres:13.2-alpine is starting: 43e2ffcf9e1b3c6e9b8c9e0645b3dc96e06667ba9e4e941fa224e0a0a5fe8f7b
build	16-May-2021 23:06:40	    2021-05-16 23:06:40,837 INFO  [Test worker     ] docker[postgres:13.2-alpine] - Container postgres:13.2-alpine started in PT3M27.579411S
...

Is there a way to reduce the startup time or to find the reason?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions