Skip to content

[Bug]: Docker pull timeout configuration ignored #10070

@Zheer09

Description

@Zheer09

Module

Core

Testcontainers version

1.20.4

Using the latest Testcontainers version?

Yes

Host OS

Linux ubuntu 20 and 24

Host Arch

x86_64

Docker version

28.0.1

What happened?

We are using java for testcontainer and we these configurations

TestcontainersConfiguration.getInstance().updateUserConfig("checks.disable", "true");
TestcontainersConfiguration.getInstance().updateUserConfig("testcontainers.reuse.enable", "true");
TestcontainersConfiguration.getInstance().updateUserConfig("pull.timeout", "10");

When we run the test we can see the .testcontainers.properties has been update base on the config above we have

#Modified by Testcontainers
#Wed Mar 05 14:29:08 AST 2025
checks.disable=false
docker.client.strategy=org.testcontainers.dockerclient.UnixSocketClientProviderStrategy
pull.timeout=10
testcontainers.reuse.enable=true

but our issue is that this still considered as 2 minutes which mean 120s so even 10s or 300s still it is 2 minutes we want to adjust this but these configuration is being ignored.

Relevant log output

com.lawrencespring.fib.topup.infrastructure.AreebaTopupServiceIntegrationTest initializationError FAILED

  java.lang.IllegalStateException: Failed to load ApplicationContext for [WebMergedContextConfiguration@1244962 testClass = com.lawrencespring.fib.topup.infrastructure.AreebaTopupServiceIntegrationTest, locations = [], classes = [com.lawrencespring.fib.topup.infrastructure.RootConfiguration, com.lawrencespring.fib.topup.infrastructure.IntegrationTestBase.IntegrationTestConfiguration], contextInitializerClasses = [], activeProfiles = ["test"], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.OnFailureConditionReportContextCustomizerFactory$OnFailureConditionReportContextCustomizer@5ac8827b, org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@1f, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@4b3fa0b3, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizer@51be87fa, [ImportsContextCustomizer@447325c9 key = [org.springframework.boot.test.autoconfigure.web.servlet.MockMvcWebDriverAutoConfiguration, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcAutoConfiguration, org.springframework.boot.autoconfigure.security.oauth2.client.servlet.OAuth2ClientAutoConfiguration, org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration, org.springframework.boot.autoconfigure.security.servlet.SecurityFilterAutoConfiguration, org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration, org.springframework.boot.autoconfigure.security.oauth2.resource.servlet.OAuth2ResourceServerAutoConfiguration, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcSecurityConfiguration, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcWebClientAutoConfiguration, org.springframework.boot.test.autoconfigure.web.reactive.WebTestClientAutoConfiguration]], org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7ad65c6d, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@f2f0e5d, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@67c1f939, org.springframework.boot.test.web.reactor.netty.DisableReactorResourceFactoryGlobalResourcesContextCustomizerFactory$DisableReactorResourceFactoryGlobalResourcesContextCustomizerCustomizer@21629f9, io.zonky.test.db.EmbeddedDatabaseContextCustomizerFactory$EmbeddedDatabaseContextCustomizer@27aaaf29, org.springframework.test.context.support.DynamicPropertiesContextCustomizer@bd994cfa, org.springframework.boot.test.context.SpringBootTestAnnotation@f8c7350e], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null]

  Caused by: java.lang.reflect.UndeclaredThrowableException

  Caused by: java.util.concurrent.ExecutionException: org.testcontainers.containers.ContainerFetchException: Can't get Docker image: RemoteDockerImage(imageName=harbor.management.fib.dc/proxy_cache/localstack/localstack:0.11.3, imagePullPolicy=DefaultPullPolicy(), imageNameSubstitutor=org.testcontainers.utility.ImageNameSubstitutor$LogWrappedImageNameSubstitutor@7310375f)

  Caused by: org.testcontainers.containers.ContainerFetchException: Can't get Docker image: RemoteDockerImage(imageName=harbor.management.fib.dc/proxy_cache/localstack/localstack:0.11.3, imagePullPolicy=DefaultPullPolicy(), imageNameSubstitutor=org.testcontainers.utility.ImageNameSubstitutor$LogWrappedImageNameSubstitutor@7310375f)

  Caused by: org.testcontainers.shaded.org.awaitility.core.ConditionTimeoutException: Condition org.testcontainers.images.RemoteDockerImage$$Lambda/0x00007f1e7c7ebe28 was not fulfilled within 2 minutes.

Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions