gitextract_vplit3v1/ ├── .circleci/ │ └── config.yml ├── .devcontainer/ │ └── devcontainer.json ├── .editorconfig ├── .gitattributes ├── .github/ │ ├── CODEOWNERS │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yaml │ │ ├── config.yml │ │ ├── enhancement.yaml │ │ └── feature.yaml │ ├── actions/ │ │ ├── setup-build/ │ │ │ └── action.yml │ │ ├── setup-gradle/ │ │ │ └── action.yml │ │ ├── setup-java/ │ │ │ └── action.yml │ │ └── setup-junit-report/ │ │ └── action.yml │ ├── bumper.yml │ ├── dependabot.yml │ ├── labeler.yml │ ├── pull_request_template.md │ ├── release-drafter.yml │ ├── settings.yml │ └── workflows/ │ ├── ci-docker-wormhole.yml │ ├── ci-rootless.yml │ ├── ci-windows-trigger.yml │ ├── ci-windows.yml │ ├── ci.yml │ ├── combine-prs.yml │ ├── labeler.yml │ ├── moby-latest.yml │ ├── release-drafter.yml │ ├── release.yml │ ├── scripts/ │ │ └── check_ci_status.sh │ ├── update-docs-version.yml │ ├── update-gradle-wrapper.yml │ └── update-testcontainers-version.yml ├── .gitignore ├── .sdkmanrc ├── AUTHORS ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── RELEASING.md ├── annotations/ │ ├── com/ │ │ └── google/ │ │ └── common/ │ │ └── base/ │ │ └── annotations.xml │ └── org/ │ └── rnorth/ │ └── ducttape/ │ └── annotations.xml ├── azure-pipelines.yml ├── bom/ │ └── build.gradle ├── build.gradle ├── buildSrc/ │ ├── build.gradle │ └── src/ │ └── main/ │ └── groovy/ │ └── org/ │ └── testcontainers/ │ └── build/ │ ├── ComparePOMWithLatestReleasedTask.groovy │ └── DelombokArgumentProvider.groovy ├── config/ │ └── checkstyle/ │ └── checkstyle.xml ├── core/ │ ├── build.gradle │ ├── src/ │ │ ├── jarFileTest/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── AbstractJarFileTest.java │ │ │ ├── JarFileShadingTest.java │ │ │ └── PublicBinaryAPITest.java │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── DelegatingDockerClient.java │ │ │ │ ├── DockerClientFactory.java │ │ │ │ ├── Testcontainers.java │ │ │ │ ├── UnstableAPI.java │ │ │ │ ├── containers/ │ │ │ │ │ ├── BindMode.java │ │ │ │ │ ├── ComposeCommand.java │ │ │ │ │ ├── ComposeContainer.java │ │ │ │ │ ├── ComposeDelegate.java │ │ │ │ │ ├── ComposeServiceWaitStrategyTarget.java │ │ │ │ │ ├── Container.java │ │ │ │ │ ├── ContainerDef.java │ │ │ │ │ ├── ContainerFetchException.java │ │ │ │ │ ├── ContainerLaunchException.java │ │ │ │ │ ├── ContainerState.java │ │ │ │ │ ├── ContainerisedDockerCompose.java │ │ │ │ │ ├── DockerCompose.java │ │ │ │ │ ├── DockerComposeContainer.java │ │ │ │ │ ├── DockerComposeFiles.java │ │ │ │ │ ├── DockerMcpGatewayContainer.java │ │ │ │ │ ├── DockerModelRunnerContainer.java │ │ │ │ │ ├── ExecConfig.java │ │ │ │ │ ├── ExecInContainerPattern.java │ │ │ │ │ ├── FixedHostPortGenericContainer.java │ │ │ │ │ ├── FutureContainer.java │ │ │ │ │ ├── GenericContainer.java │ │ │ │ │ ├── InternetProtocol.java │ │ │ │ │ ├── LocalDockerCompose.java │ │ │ │ │ ├── Network.java │ │ │ │ │ ├── ParsedDockerComposeFile.java │ │ │ │ │ ├── PortForwardingContainer.java │ │ │ │ │ ├── SelinuxContext.java │ │ │ │ │ ├── SocatContainer.java │ │ │ │ │ ├── VncRecordingContainer.java │ │ │ │ │ ├── output/ │ │ │ │ │ │ ├── BaseConsumer.java │ │ │ │ │ │ ├── FrameConsumerResultCallback.java │ │ │ │ │ │ ├── OutputFrame.java │ │ │ │ │ │ ├── Slf4jLogConsumer.java │ │ │ │ │ │ ├── ToStringConsumer.java │ │ │ │ │ │ └── WaitingConsumer.java │ │ │ │ │ ├── startupcheck/ │ │ │ │ │ │ ├── IndefiniteWaitOneShotStartupCheckStrategy.java │ │ │ │ │ │ ├── IsRunningStartupCheckStrategy.java │ │ │ │ │ │ ├── MinimumDurationRunningStartupCheckStrategy.java │ │ │ │ │ │ ├── OneShotStartupCheckStrategy.java │ │ │ │ │ │ └── StartupCheckStrategy.java │ │ │ │ │ ├── traits/ │ │ │ │ │ │ └── LinkableContainer.java │ │ │ │ │ └── wait/ │ │ │ │ │ ├── internal/ │ │ │ │ │ │ ├── ExternalPortListeningCheck.java │ │ │ │ │ │ └── InternalCommandPortListeningCheck.java │ │ │ │ │ └── strategy/ │ │ │ │ │ ├── AbstractWaitStrategy.java │ │ │ │ │ ├── DockerHealthcheckWaitStrategy.java │ │ │ │ │ ├── HostPortWaitStrategy.java │ │ │ │ │ ├── HttpWaitStrategy.java │ │ │ │ │ ├── LogMessageWaitStrategy.java │ │ │ │ │ ├── ShellStrategy.java │ │ │ │ │ ├── Wait.java │ │ │ │ │ ├── WaitAllStrategy.java │ │ │ │ │ ├── WaitStrategy.java │ │ │ │ │ └── WaitStrategyTarget.java │ │ │ │ ├── core/ │ │ │ │ │ └── CreateContainerCmdModifier.java │ │ │ │ ├── dockerclient/ │ │ │ │ │ ├── AuditLoggingDockerClient.java │ │ │ │ │ ├── AuthDelegatingDockerClientConfig.java │ │ │ │ │ ├── DockerClientConfigUtils.java │ │ │ │ │ ├── DockerClientProviderStrategy.java │ │ │ │ │ ├── DockerDesktopClientProviderStrategy.java │ │ │ │ │ ├── DockerMachineClientProviderStrategy.java │ │ │ │ │ ├── EnvironmentAndSystemPropertyClientProviderStrategy.java │ │ │ │ │ ├── HeadersAddingDockerHttpClient.java │ │ │ │ │ ├── InvalidConfigurationException.java │ │ │ │ │ ├── LogToStringContainerCallback.java │ │ │ │ │ ├── NpipeSocketClientProviderStrategy.java │ │ │ │ │ ├── RootlessDockerClientProviderStrategy.java │ │ │ │ │ ├── TestcontainersHostPropertyClientProviderStrategy.java │ │ │ │ │ ├── TransportConfig.java │ │ │ │ │ └── UnixSocketClientProviderStrategy.java │ │ │ │ ├── images/ │ │ │ │ │ ├── AbstractImagePullPolicy.java │ │ │ │ │ ├── AgeBasedPullPolicy.java │ │ │ │ │ ├── AlwaysPullPolicy.java │ │ │ │ │ ├── DefaultPullPolicy.java │ │ │ │ │ ├── ImageData.java │ │ │ │ │ ├── ImagePullPolicy.java │ │ │ │ │ ├── LocalImagesCache.java │ │ │ │ │ ├── LoggedPullImageResultCallback.java │ │ │ │ │ ├── ParsedDockerfile.java │ │ │ │ │ ├── PullPolicy.java │ │ │ │ │ ├── RemoteDockerImage.java │ │ │ │ │ ├── TimeLimitedLoggedPullImageResultCallback.java │ │ │ │ │ └── builder/ │ │ │ │ │ ├── ImageFromDockerfile.java │ │ │ │ │ ├── Transferable.java │ │ │ │ │ ├── dockerfile/ │ │ │ │ │ │ ├── DockerfileBuilder.java │ │ │ │ │ │ ├── statement/ │ │ │ │ │ │ │ ├── KeyValuesStatement.java │ │ │ │ │ │ │ ├── MultiArgsStatement.java │ │ │ │ │ │ │ ├── RawStatement.java │ │ │ │ │ │ │ ├── SingleArgumentStatement.java │ │ │ │ │ │ │ └── Statement.java │ │ │ │ │ │ └── traits/ │ │ │ │ │ │ ├── AddStatementTrait.java │ │ │ │ │ │ ├── CmdStatementTrait.java │ │ │ │ │ │ ├── CopyStatementTrait.java │ │ │ │ │ │ ├── DockerfileBuilderTrait.java │ │ │ │ │ │ ├── EntryPointStatementTrait.java │ │ │ │ │ │ ├── EnvStatementTrait.java │ │ │ │ │ │ ├── ExposeStatementTrait.java │ │ │ │ │ │ ├── FromStatementTrait.java │ │ │ │ │ │ ├── LabelStatementTrait.java │ │ │ │ │ │ ├── RunStatementTrait.java │ │ │ │ │ │ ├── UserStatementTrait.java │ │ │ │ │ │ ├── VolumeStatementTrait.java │ │ │ │ │ │ └── WorkdirStatementTrait.java │ │ │ │ │ └── traits/ │ │ │ │ │ ├── BuildContextBuilderTrait.java │ │ │ │ │ ├── ClasspathTrait.java │ │ │ │ │ ├── DockerfileTrait.java │ │ │ │ │ ├── FilesTrait.java │ │ │ │ │ └── StringsTrait.java │ │ │ │ ├── jib/ │ │ │ │ │ ├── JibDockerClient.java │ │ │ │ │ ├── JibImage.java │ │ │ │ │ └── JibImageDetails.java │ │ │ │ ├── lifecycle/ │ │ │ │ │ ├── Startable.java │ │ │ │ │ ├── Startables.java │ │ │ │ │ ├── TestDescription.java │ │ │ │ │ └── TestLifecycleAware.java │ │ │ │ └── utility/ │ │ │ │ ├── AuditLogger.java │ │ │ │ ├── AuthConfigUtil.java │ │ │ │ ├── Base58.java │ │ │ │ ├── ClasspathScanner.java │ │ │ │ ├── CommandLine.java │ │ │ │ ├── ComparableVersion.java │ │ │ │ ├── ConfigurationFileImageNameSubstitutor.java │ │ │ │ ├── DefaultImageNameSubstitutor.java │ │ │ │ ├── DockerImageName.java │ │ │ │ ├── DockerLoggerFactory.java │ │ │ │ ├── DockerMachineClient.java │ │ │ │ ├── DockerStatus.java │ │ │ │ ├── DynamicPollInterval.java │ │ │ │ ├── ImageNameSubstitutor.java │ │ │ │ ├── JVMHookResourceReaper.java │ │ │ │ ├── LazyFuture.java │ │ │ │ ├── LicenseAcceptance.java │ │ │ │ ├── LogUtils.java │ │ │ │ ├── MountableFile.java │ │ │ │ ├── PathUtils.java │ │ │ │ ├── PrefixingImageNameSubstitutor.java │ │ │ │ ├── RegistryAuthLocator.java │ │ │ │ ├── ResourceReaper.java │ │ │ │ ├── RyukContainer.java │ │ │ │ ├── RyukResourceReaper.java │ │ │ │ ├── TestEnvironment.java │ │ │ │ ├── TestcontainersConfiguration.java │ │ │ │ ├── ThrowingFunction.java │ │ │ │ └── Versioning.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ ├── native-image/ │ │ │ │ └── org.testcontainers/ │ │ │ │ └── testcontainers/ │ │ │ │ └── native-image.properties │ │ │ └── services/ │ │ │ └── org.testcontainers.dockerclient.DockerClientProviderStrategy │ │ └── test/ │ │ ├── java/ │ │ │ ├── alt/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── README.md │ │ │ │ └── images/ │ │ │ │ └── OutOfPackageImagePullPolicyTest.java │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── DaemonTest.java │ │ │ ├── DockerClientFactoryTest.java │ │ │ ├── DockerRegistryContainer.java │ │ │ ├── TestImages.java │ │ │ ├── containers/ │ │ │ │ ├── ComposeContainerTest.java │ │ │ │ ├── ComposeContainerWithServicesTest.java │ │ │ │ ├── ComposeOverridesTest.java │ │ │ │ ├── ComposeProfilesOptionTest.java │ │ │ │ ├── ContainerStateTest.java │ │ │ │ ├── DockerComposeContainerCustomImageTest.java │ │ │ │ ├── DockerComposeContainerWithServicesTest.java │ │ │ │ ├── DockerComposeFilesTest.java │ │ │ │ ├── DockerComposeOverridesTest.java │ │ │ │ ├── DockerComposeProfilesOptionTest.java │ │ │ │ ├── DockerMcpGatewayContainerTest.java │ │ │ │ ├── DockerModelRunnerContainerTest.java │ │ │ │ ├── ExposedHostTest.java │ │ │ │ ├── GenericContainerTest.java │ │ │ │ ├── JibTest.java │ │ │ │ ├── MultiStageBuildTest.java │ │ │ │ ├── NetworkTest.java │ │ │ │ ├── ParsedDockerComposeFileBean.java │ │ │ │ ├── ParsedDockerComposeFileValidationTest.java │ │ │ │ ├── ReusabilityUnitTests.java │ │ │ │ ├── output/ │ │ │ │ │ ├── ContainerLogsTest.java │ │ │ │ │ ├── FrameConsumerResultCallbackTest.java │ │ │ │ │ └── ToStringConsumerTest.java │ │ │ │ ├── startupcheck/ │ │ │ │ │ └── IsRunningStartupCheckStrategyTest.java │ │ │ │ └── wait/ │ │ │ │ ├── internal/ │ │ │ │ │ ├── ExternalPortListeningCheckTest.java │ │ │ │ │ └── InternalCommandPortListeningCheckTest.java │ │ │ │ └── strategy/ │ │ │ │ ├── DockerHealthcheckWaitStrategyTest.java │ │ │ │ └── WaitAllStrategyTest.java │ │ │ ├── custom/ │ │ │ │ └── TestCreateContainerCmdModifier.java │ │ │ ├── dockerclient/ │ │ │ │ ├── AmbiguousImagePullTest.java │ │ │ │ ├── DockerClientConfigUtilsTest.java │ │ │ │ ├── EnvironmentAndSystemPropertyClientProviderStrategyTest.java │ │ │ │ ├── EventStreamTest.java │ │ │ │ ├── ImagePullTest.java │ │ │ │ └── TestcontainersHostPropertyClientProviderStrategyTest.java │ │ │ ├── images/ │ │ │ │ ├── AgeBasedPullPolicyTest.java │ │ │ │ ├── ImageDataTest.java │ │ │ │ ├── ImagePullPolicyTest.java │ │ │ │ ├── LocalImagesCacheAccessor.java │ │ │ │ ├── OverrideImagePullPolicyTest.java │ │ │ │ ├── ParsedDockerfileTest.java │ │ │ │ ├── RemoteDockerImageTest.java │ │ │ │ └── builder/ │ │ │ │ ├── DockerfileBuildTest.java │ │ │ │ ├── DockerignoreTest.java │ │ │ │ ├── ImageFromDockerfileTest.java │ │ │ │ └── dockerfile/ │ │ │ │ └── statement/ │ │ │ │ ├── AbstractStatementTest.java │ │ │ │ ├── KeyValuesStatementTest.java │ │ │ │ ├── MultiArgsStatementTest.java │ │ │ │ ├── RawStatementTest.java │ │ │ │ └── SingleArgumentStatementTest.java │ │ │ ├── junit/ │ │ │ │ ├── BaseComposeTest.java │ │ │ │ ├── BaseDockerComposeTest.java │ │ │ │ ├── ComposeContainerOverrideTest.java │ │ │ │ ├── ComposeContainerPortViaEnvTest.java │ │ │ │ ├── ComposeContainerScalingTest.java │ │ │ │ ├── ComposeContainerTest.java │ │ │ │ ├── ComposeContainerVolumeRemovalTest.java │ │ │ │ ├── ComposeContainerWithBuildTest.java │ │ │ │ ├── ComposeContainerWithCopyFilesTest.java │ │ │ │ ├── ComposeContainerWithOptionsTest.java │ │ │ │ ├── ComposeContainerWithWaitStrategiesTest.java │ │ │ │ ├── ComposeErrorHandlingTest.java │ │ │ │ ├── ComposePassthroughTest.java │ │ │ │ ├── ComposeWaitStrategyTest.java │ │ │ │ ├── ComposeWithIdentifierTest.java │ │ │ │ ├── ComposeWithNetworkTest.java │ │ │ │ ├── CopyFileToContainerTest.java │ │ │ │ ├── DependenciesTest.java │ │ │ │ ├── DockerComposeContainerPortViaEnvTest.java │ │ │ │ ├── DockerComposeContainerScalingTest.java │ │ │ │ ├── DockerComposeContainerTest.java │ │ │ │ ├── DockerComposeContainerVolumeRemovalTest.java │ │ │ │ ├── DockerComposeContainerWithBuildTest.java │ │ │ │ ├── DockerComposeContainerWithCopyFilesTest.java │ │ │ │ ├── DockerComposeContainerWithOptionsTest.java │ │ │ │ ├── DockerComposeErrorHandlingTest.java │ │ │ │ ├── DockerComposeLocalImageTest.java │ │ │ │ ├── DockerComposeLogConsumerTest.java │ │ │ │ ├── DockerComposePassthroughTest.java │ │ │ │ ├── DockerComposeServiceTest.java │ │ │ │ ├── DockerComposeV2FormatTest.java │ │ │ │ ├── DockerComposeV2FormatWithIdentifierTest.java │ │ │ │ ├── DockerComposeV2WithNetworkTest.java │ │ │ │ ├── DockerComposeWaitStrategyTest.java │ │ │ │ ├── DockerNetworkModeTest.java │ │ │ │ ├── DockerfileContainerTest.java │ │ │ │ ├── DockerfileTest.java │ │ │ │ ├── ExecInContainerTest.java │ │ │ │ ├── FileOperationsTest.java │ │ │ │ ├── FixedHostPortContainerTest.java │ │ │ │ ├── GenericContainerRuleTest.java │ │ │ │ ├── NonExistentImagePullTest.java │ │ │ │ ├── OutputStreamTest.java │ │ │ │ ├── OutputStreamWithTTYTest.java │ │ │ │ ├── ParameterizedDockerfileContainerTest.java │ │ │ │ ├── WorkingDirectoryTest.java │ │ │ │ └── wait/ │ │ │ │ └── strategy/ │ │ │ │ ├── AbstractWaitStrategyTest.java │ │ │ │ ├── HostPortWaitStrategyTest.java │ │ │ │ ├── HttpWaitStrategyTest.java │ │ │ │ ├── LogMessageWaitStrategyTest.java │ │ │ │ └── ShellStrategyTest.java │ │ │ └── utility/ │ │ │ ├── AuthenticatedImagePullTest.java │ │ │ ├── ClasspathScannerTest.java │ │ │ ├── ComparableVersionTest.java │ │ │ ├── DefaultImageNameSubstitutorTest.java │ │ │ ├── DirectoryTarResourceTest.java │ │ │ ├── DockerImageNameCompatibilityTest.java │ │ │ ├── DockerImageNameTest.java │ │ │ ├── DockerLoggerFactoryTest.java │ │ │ ├── DockerStatusTest.java │ │ │ ├── FakeImagePullPolicy.java │ │ │ ├── FakeImageSubstitutor.java │ │ │ ├── FilterRegistryTest.java │ │ │ ├── ImageNameSubstitutorTest.java │ │ │ ├── LazyFutureTest.java │ │ │ ├── LicenseAcceptanceTest.java │ │ │ ├── MockTestcontainersConfigurationExtension.java │ │ │ ├── MountableFileTest.java │ │ │ ├── PrefixingImageNameSubstitutorTest.java │ │ │ ├── RegistryAuthLocatorTest.java │ │ │ ├── ResourceReaperTest.java │ │ │ ├── TestEnvironmentTest.java │ │ │ └── TestcontainersConfigurationTest.java │ │ └── resources/ │ │ ├── Dockerfile │ │ ├── Dockerfile-multistage │ │ ├── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.core.CreateContainerCmdModifier │ │ ├── auth-config/ │ │ │ ├── config-basic-auth.json │ │ │ ├── config-empty-auth-with-helper.json │ │ │ ├── config-empty.json │ │ │ ├── config-existing-auth-with-helper.json │ │ │ ├── config-with-helper-and-store.json │ │ │ ├── config-with-helper-no-server-url-using-token.json │ │ │ ├── config-with-helper-no-server-url.json │ │ │ ├── config-with-helper-using-token.json │ │ │ ├── config-with-helper.json │ │ │ ├── config-with-json-key.json │ │ │ ├── config-with-store-empty.json │ │ │ ├── config-with-store.json │ │ │ ├── docker-credential-fake │ │ │ └── win/ │ │ │ └── docker-credential-fake.bat │ │ ├── compose-build-test/ │ │ │ ├── Dockerfile │ │ │ └── docker-compose.yml │ │ ├── compose-dockerfile/ │ │ │ ├── Dockerfile │ │ │ └── passthrough.sh │ │ ├── compose-file-copy-inclusions/ │ │ │ ├── Dockerfile │ │ │ ├── EnvVariableRestEndpoint.java │ │ │ ├── compose-root-only.yml │ │ │ ├── compose-test-only.yml │ │ │ └── compose.yml │ │ ├── compose-options-test/ │ │ │ └── with-deploy-block.yml │ │ ├── compose-override/ │ │ │ ├── compose-override.yml │ │ │ └── compose.yml │ │ ├── compose-profile-option/ │ │ │ └── compose-test.yml │ │ ├── compose-scaling-multiple-containers.yml │ │ ├── compose-test.yml │ │ ├── compose-v2-build-test/ │ │ │ ├── Dockerfile │ │ │ └── docker-compose.yml │ │ ├── compose-with-inline-scale-test.yml │ │ ├── composev2/ │ │ │ ├── compose-test.yml │ │ │ └── scaled-compose-test.yml │ │ ├── container-license-acceptance.txt │ │ ├── docker-compose-base.yml │ │ ├── docker-compose-container-name-v1.yml │ │ ├── docker-compose-deserialization.yml │ │ ├── docker-compose-healthcheck.yml │ │ ├── docker-compose-imagename-overriding-a.yml │ │ ├── docker-compose-imagename-overriding-b.yml │ │ ├── docker-compose-imagename-parsing-dockerfile-with-context.yml │ │ ├── docker-compose-imagename-parsing-dockerfile.yml │ │ ├── docker-compose-imagename-parsing-v1.yml │ │ ├── docker-compose-imagename-parsing-v2-no-version.yml │ │ ├── docker-compose-imagename-parsing-v2.yml │ │ ├── docker-compose-non-default-override.yml │ │ ├── dockerfile-build-invalid/ │ │ │ ├── .dockerignore │ │ │ └── Dockerfile │ │ ├── dockerfile-build-test/ │ │ │ ├── .dockerignore │ │ │ ├── Dockerfile │ │ │ ├── Dockerfile-alt │ │ │ ├── Dockerfile-buildarg │ │ │ ├── Dockerfile-currentdir │ │ │ ├── Dockerfile-from-buildarg │ │ │ ├── localfile.txt │ │ │ ├── should_be_ignored.txt │ │ │ └── should_not_be_ignored.txt │ │ ├── expectedClasspathFile.txt │ │ ├── fixtures/ │ │ │ └── statements/ │ │ │ ├── KeyValuesStatementTest/ │ │ │ │ ├── keyWithNewLinesTest │ │ │ │ ├── keyWithSpacesTest │ │ │ │ ├── keyWithTabsTest │ │ │ │ ├── multilineTest │ │ │ │ └── valueIsEscapedTest │ │ │ ├── MultiArgsStatementTest/ │ │ │ │ ├── multilineTest │ │ │ │ └── simpleTest │ │ │ ├── RawStatementTest/ │ │ │ │ └── simpleTest │ │ │ └── SingleArgumentStatementTest/ │ │ │ ├── multilineTest │ │ │ └── simpleTest │ │ ├── health-wait-strategy-dockerfile/ │ │ │ ├── Dockerfile │ │ │ └── write_file_and_loop.sh │ │ ├── https-wait-strategy-dockerfile/ │ │ │ ├── Dockerfile │ │ │ └── nginx-ssl.conf │ │ ├── internal-port-check-dockerfile/ │ │ │ ├── Dockerfile-bash │ │ │ ├── Dockerfile-nc │ │ │ ├── Dockerfile-tcp │ │ │ └── nginx.conf │ │ ├── invalid-compose.yml │ │ ├── local-compose-test.yml │ │ ├── logback-test.xml │ │ ├── mappable-dockerfile/ │ │ │ └── Dockerfile │ │ ├── mappable-resource/ │ │ │ └── test-resource.txt │ │ ├── redis.conf │ │ ├── scaled-compose-test.yml │ │ ├── test-recursive-file.txt │ │ ├── test_copy_to_container.txt │ │ ├── v2-compose-test-passthrough.yml │ │ ├── v2-compose-test-port-via-env.yml │ │ ├── v2-compose-test-with-network.yml │ │ └── v2-compose-test.yml │ └── testlib/ │ ├── META-INF/ │ │ └── dummy_unique_name.txt │ ├── README.md │ ├── create_fakejar.sh │ ├── recursive/ │ │ └── dir/ │ │ └── content.txt │ └── repo/ │ └── fakejar/ │ └── fakejar/ │ ├── 0/ │ │ ├── fakejar-0.jar │ │ └── fakejar-0.pom │ └── maven-metadata-local.xml ├── docker-compose.yml ├── docs/ │ ├── _headers │ ├── _redirects │ ├── bounty.md │ ├── contributing.md │ ├── contributing_docs.md │ ├── css/ │ │ ├── extra.css │ │ └── tc-header.css │ ├── error_missing_container_runtime_environment.md │ ├── examples/ │ │ ├── junit4/ │ │ │ ├── generic/ │ │ │ │ ├── build.gradle │ │ │ │ └── src/ │ │ │ │ └── test/ │ │ │ │ ├── java/ │ │ │ │ │ ├── generic/ │ │ │ │ │ │ ├── CmdModifierTest.java │ │ │ │ │ │ ├── CommandsTest.java │ │ │ │ │ │ ├── ContainerCreationTest.java │ │ │ │ │ │ ├── ContainerLabelTest.java │ │ │ │ │ │ ├── DependsOnTest.java │ │ │ │ │ │ ├── ExampleImageNameSubstitutor.java │ │ │ │ │ │ ├── ExecTest.java │ │ │ │ │ │ ├── HostPortExposedTest.java │ │ │ │ │ │ ├── ImageNameSubstitutionTest.java │ │ │ │ │ │ ├── MultiplePortsExposedTest.java │ │ │ │ │ │ ├── WaitStrategiesTest.java │ │ │ │ │ │ └── support/ │ │ │ │ │ │ └── TestSpecificImageNameSubstitutor.java │ │ │ │ │ └── org/ │ │ │ │ │ └── testcontainers/ │ │ │ │ │ └── containers/ │ │ │ │ │ └── startupcheck/ │ │ │ │ │ └── StartupCheckStrategyTest.java │ │ │ │ └── resources/ │ │ │ │ ├── logback-test.xml │ │ │ │ └── testcontainers.properties │ │ │ └── redis/ │ │ │ ├── build.gradle │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ └── java/ │ │ │ │ └── quickstart/ │ │ │ │ └── RedisBackedCache.java │ │ │ └── test/ │ │ │ ├── java/ │ │ │ │ └── quickstart/ │ │ │ │ ├── RedisBackedCacheIntTest.java │ │ │ │ └── RedisBackedCacheIntTestStep0.java │ │ │ └── resources/ │ │ │ └── logback-test.xml │ │ ├── junit5/ │ │ │ └── redis/ │ │ │ ├── build.gradle │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ └── java/ │ │ │ │ └── quickstart/ │ │ │ │ └── RedisBackedCache.java │ │ │ └── test/ │ │ │ ├── java/ │ │ │ │ └── quickstart/ │ │ │ │ ├── RedisBackedCacheIntTest.java │ │ │ │ └── RedisBackedCacheIntTestStep0.java │ │ │ └── resources/ │ │ │ └── logback-test.xml │ │ └── spock/ │ │ └── redis/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── quickstart/ │ │ │ └── RedisBackedCache.java │ │ └── test/ │ │ ├── groovy/ │ │ │ └── quickstart/ │ │ │ ├── RedisBackedCacheIntTest.groovy │ │ │ └── RedisBackedCacheIntTestStep0.groovy │ │ └── resources/ │ │ └── logback-test.xml │ ├── examples.md │ ├── features/ │ │ ├── advanced_options.md │ │ ├── commands.md │ │ ├── configuration.md │ │ ├── container_logs.md │ │ ├── creating_container.md │ │ ├── creating_images.md │ │ ├── files.md │ │ ├── image_name_substitution.md │ │ ├── jib.md │ │ ├── networking.md │ │ ├── reuse.md │ │ └── startup_and_waits.md │ ├── getting_help.md │ ├── index.md │ ├── jitpack_dependencies.md │ ├── js/ │ │ └── tc-header.js │ ├── modules/ │ │ ├── activemq.md │ │ ├── azure.md │ │ ├── chromadb.md │ │ ├── consul.md │ │ ├── databases/ │ │ │ ├── cassandra.md │ │ │ ├── clickhouse.md │ │ │ ├── cockroachdb.md │ │ │ ├── couchbase.md │ │ │ ├── cratedb.md │ │ │ ├── databend.md │ │ │ ├── db2.md │ │ │ ├── index.md │ │ │ ├── influxdb.md │ │ │ ├── jdbc.md │ │ │ ├── mariadb.md │ │ │ ├── mongodb.md │ │ │ ├── mssqlserver.md │ │ │ ├── mysql.md │ │ │ ├── neo4j.md │ │ │ ├── oceanbase.md │ │ │ ├── oraclefree.md │ │ │ ├── oraclexe.md │ │ │ ├── orientdb.md │ │ │ ├── postgres.md │ │ │ ├── presto.md │ │ │ ├── questdb.md │ │ │ ├── r2dbc.md │ │ │ ├── scylladb.md │ │ │ ├── tidb.md │ │ │ ├── timeplus.md │ │ │ ├── trino.md │ │ │ └── yugabytedb.md │ │ ├── docker_compose.md │ │ ├── docker_mcp_gateway.md │ │ ├── docker_model_runner.md │ │ ├── elasticsearch.md │ │ ├── gcloud.md │ │ ├── grafana.md │ │ ├── hivemq.md │ │ ├── k3s.md │ │ ├── k6.md │ │ ├── kafka.md │ │ ├── ldap.md │ │ ├── localstack.md │ │ ├── milvus.md │ │ ├── minio.md │ │ ├── mockserver.md │ │ ├── nginx.md │ │ ├── ollama.md │ │ ├── openfga.md │ │ ├── pinecone.md │ │ ├── pulsar.md │ │ ├── qdrant.md │ │ ├── rabbitmq.md │ │ ├── redpanda.md │ │ ├── solace.md │ │ ├── solr.md │ │ ├── toxiproxy.md │ │ ├── typesense.md │ │ ├── vault.md │ │ ├── weaviate.md │ │ └── webdriver_containers.md │ ├── quickstart/ │ │ ├── junit_4_quickstart.md │ │ ├── junit_5_quickstart.md │ │ └── spock_quickstart.md │ ├── supported_docker_environment/ │ │ ├── continuous_integration/ │ │ │ ├── aws_codebuild.md │ │ │ ├── bitbucket_pipelines.md │ │ │ ├── circle_ci.md │ │ │ ├── concourse_ci.md │ │ │ ├── dind_patterns.md │ │ │ ├── drone.md │ │ │ ├── gitlab_ci.md │ │ │ ├── tekton.md │ │ │ └── travis.md │ │ ├── image_registry_rate_limiting.md │ │ ├── index.md │ │ ├── logging_config.md │ │ └── windows.md │ ├── test_framework_integration/ │ │ ├── external.md │ │ ├── junit_4.md │ │ ├── junit_5.md │ │ ├── manual_lifecycle_control.md │ │ └── spock.md │ └── theme/ │ ├── main.html │ └── partials/ │ ├── header.html │ ├── nav.html │ └── tc-header.html ├── examples/ │ ├── README.md │ ├── build.gradle │ ├── cucumber/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── examples/ │ │ │ ├── CucumberTest.java │ │ │ └── Stepdefs.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── org/ │ │ └── testcontainers/ │ │ └── examples/ │ │ └── is_search_possible.feature │ ├── gradle/ │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ ├── hazelcast/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── examples/ │ │ │ └── HazelcastTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── immudb/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── ImmuDbTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── kafka-cluster/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── kafkacluster/ │ │ │ ├── ApacheKafkaContainerCluster.java │ │ │ ├── ApacheKafkaContainerClusterTest.java │ │ │ ├── ConfluentKafkaContainerCluster.java │ │ │ ├── ConfluentKafkaContainerClusterTest.java │ │ │ ├── KafkaContainerCluster.java │ │ │ ├── KafkaContainerClusterTest.java │ │ │ └── KafkaContainerKraftCluster.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── nats/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── NatsContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── neo4j-container/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── containers/ │ │ │ └── Neo4jExampleTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── ollama-hugging-face/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── ollamahf/ │ │ │ ├── OllamaHuggingFaceContainer.java │ │ │ └── OllamaHuggingFaceTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── redis-backed-cache/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── mycompany/ │ │ │ └── cache/ │ │ │ ├── Cache.java │ │ │ └── RedisBackedCache.java │ │ └── test/ │ │ ├── java/ │ │ │ └── RedisBackedCacheTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── redis-backed-cache-testng/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── mycompany/ │ │ │ └── cache/ │ │ │ ├── Cache.java │ │ │ └── RedisBackedCache.java │ │ └── test/ │ │ ├── java/ │ │ │ └── RedisBackedCacheTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── selenium-container/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── example/ │ │ │ │ └── DemoApplication.java │ │ │ └── resources/ │ │ │ └── static/ │ │ │ └── foo.html │ │ └── test/ │ │ ├── java/ │ │ │ └── SeleniumContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── settings.gradle │ ├── sftp/ │ │ ├── build.gradle │ │ └── src/ │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── example/ │ │ │ └── SftpContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ ├── ssh_host_rsa_key │ │ ├── ssh_host_rsa_key.pub │ │ └── testcontainers/ │ │ └── file.txt │ ├── singleton-container/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── cache/ │ │ │ ├── Cache.java │ │ │ └── RedisBackedCache.java │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ ├── AbstractIntegrationTest.java │ │ │ ├── BarConcreteTestClass.java │ │ │ └── FooConcreteTestClass.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── solr-container/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ ├── SearchEngine.java │ │ │ ├── SearchResult.java │ │ │ └── SolrSearchEngine.java │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── SolrQueryTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── spring-boot/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── example/ │ │ │ │ ├── DemoApplication.java │ │ │ │ ├── DemoController.java │ │ │ │ ├── DemoEntity.java │ │ │ │ ├── DemoRepository.java │ │ │ │ └── DemoService.java │ │ │ └── resources/ │ │ │ └── application.yml │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ ├── AbstractIntegrationTest.java │ │ │ └── DemoControllerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── spring-boot-kotlin-redis/ │ │ ├── build.gradle.kts │ │ └── src/ │ │ ├── main/ │ │ │ └── kotlin/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── redis/ │ │ │ ├── ExampleController.kt │ │ │ └── RedisApplication.kt │ │ └── test/ │ │ ├── kotlin/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── redis/ │ │ │ ├── AbstractIntegrationTest.kt │ │ │ ├── RedisApplicationTests.kt │ │ │ └── RedisTest.kt │ │ └── resources/ │ │ └── logback-test.xml │ └── zookeeper/ │ ├── build.gradle │ └── src/ │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── example/ │ │ └── ZookeeperContainerTest.java │ └── resources/ │ └── logback-test.xml ├── gradle/ │ ├── ci-support.gradle │ ├── japicmp.gradle │ ├── publishing.gradle │ ├── shading.gradle │ ├── spotless.gradle │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── mkdocs.yml ├── modules/ │ ├── activemq/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── activemq/ │ │ │ ├── ActiveMQContainer.java │ │ │ └── ArtemisContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── activemq/ │ │ │ ├── ActiveMQContainerTest.java │ │ │ └── ArtemisContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── azure/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── azure/ │ │ │ │ ├── AzuriteContainer.java │ │ │ │ ├── EventHubsEmulatorContainer.java │ │ │ │ └── ServiceBusEmulatorContainer.java │ │ │ └── containers/ │ │ │ ├── CosmosDBEmulatorContainer.java │ │ │ └── KeyStoreBuilder.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── azure/ │ │ │ │ ├── AzuriteContainerTest.java │ │ │ │ ├── EventHubsEmulatorContainerTest.java │ │ │ │ └── ServiceBusEmulatorContainerTest.java │ │ │ └── containers/ │ │ │ └── CosmosDBEmulatorContainerTest.java │ │ └── resources/ │ │ ├── certificate.pem │ │ ├── eventhubs_config.json │ │ ├── key.pem │ │ ├── keystore.pfx │ │ ├── logback-test.xml │ │ └── service-bus-config.json │ ├── build.gradle │ ├── cassandra/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── cassandra/ │ │ │ │ │ ├── CassandraContainer.java │ │ │ │ │ ├── CassandraDatabaseDelegate.java │ │ │ │ │ └── CassandraQueryWaitStrategy.java │ │ │ │ └── containers/ │ │ │ │ ├── CassandraContainer.java │ │ │ │ ├── delegate/ │ │ │ │ │ └── CassandraDatabaseDelegate.java │ │ │ │ └── wait/ │ │ │ │ └── CassandraQueryWaitStrategy.java │ │ │ └── resources/ │ │ │ └── cqlshrc │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── cassandra/ │ │ │ │ ├── CassandraContainerTest.java │ │ │ │ └── CompatibleCassandraImageTest.java │ │ │ └── containers/ │ │ │ ├── CassandraContainerTest.java │ │ │ └── CompatibleCassandraImageTest.java │ │ └── resources/ │ │ ├── cassandra-auth-required-configuration/ │ │ │ └── cassandra.yaml │ │ ├── cassandra-ssl-configuration/ │ │ │ ├── cassandra.cer │ │ │ ├── cassandra.yaml │ │ │ ├── keystore.p12 │ │ │ └── truststore.p12 │ │ ├── cassandra-test-configuration-example/ │ │ │ └── cassandra.yaml │ │ ├── client-ssl/ │ │ │ ├── cassandra.cer.pem │ │ │ └── cassandra.key.pem │ │ ├── initial-with-error.cql │ │ ├── initial.cql │ │ └── logback-test.xml │ ├── chromadb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── chromadb/ │ │ │ └── ChromaDBContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── chromadb/ │ │ │ └── ChromaDBContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── clickhouse/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── clickhouse/ │ │ │ │ │ ├── ClickHouseContainer.java │ │ │ │ │ ├── ClickHouseR2DBCDatabaseContainer.java │ │ │ │ │ └── ClickHouseR2DBCDatabaseContainerProvider.java │ │ │ │ └── containers/ │ │ │ │ ├── ClickHouseContainer.java │ │ │ │ └── ClickHouseProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── ClickhouseTestImages.java │ │ │ ├── clickhouse/ │ │ │ │ ├── ClickHouseContainerTest.java │ │ │ │ └── ClickHouseR2DBCDatabaseContainerTest.java │ │ │ ├── jdbc/ │ │ │ │ └── clickhouse/ │ │ │ │ └── ClickhouseJDBCDriverTest.java │ │ │ └── junit/ │ │ │ └── clickhouse/ │ │ │ └── SimpleClickhouseTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── cockroachdb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── cockroachdb/ │ │ │ │ │ └── CockroachContainer.java │ │ │ │ └── containers/ │ │ │ │ ├── CockroachContainer.java │ │ │ │ └── CockroachContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── CockroachDBTestImages.java │ │ │ ├── cockroachdb/ │ │ │ │ └── CockroachContainerTest.java │ │ │ └── jdbc/ │ │ │ └── cockroachdb/ │ │ │ └── CockroachDBJDBCDriverTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── somepath/ │ │ └── init_postgresql.sql │ ├── consul/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── consul/ │ │ │ └── ConsulContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── consul/ │ │ │ └── ConsulContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── couchbase/ │ │ ├── AUTHORS │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── couchbase/ │ │ │ ├── BucketDefinition.java │ │ │ ├── CouchbaseContainer.java │ │ │ └── CouchbaseService.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── couchbase/ │ │ │ └── CouchbaseContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── cratedb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── cratedb/ │ │ │ │ ├── CrateDBContainer.java │ │ │ │ └── CrateDBContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── CrateDBTestImages.java │ │ │ ├── jdbc/ │ │ │ │ └── cratedb/ │ │ │ │ └── CrateDBJDBCDriverTest.java │ │ │ └── junit/ │ │ │ └── cratedb/ │ │ │ └── SimpleCrateDBTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── somepath/ │ │ └── init_cratedb.sql │ ├── database-commons/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── delegate/ │ │ │ │ ├── AbstractDatabaseDelegate.java │ │ │ │ └── DatabaseDelegate.java │ │ │ ├── exception/ │ │ │ │ └── ConnectionCreationException.java │ │ │ └── ext/ │ │ │ ├── ScriptScanner.java │ │ │ ├── ScriptSplitter.java │ │ │ └── ScriptUtils.java │ │ └── test/ │ │ └── java/ │ │ └── org/ │ │ └── testcontainers/ │ │ └── ext/ │ │ ├── ScriptScannerTest.java │ │ └── ScriptSplittingTest.java │ ├── databend/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── databend/ │ │ │ │ ├── DatabendContainer.java │ │ │ │ └── DatabendContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── databend/ │ │ │ ├── DatabendContainerTest.java │ │ │ └── DatabendJDBCDriverTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── db2/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── Db2Container.java │ │ │ │ │ └── Db2ContainerProvider.java │ │ │ │ └── db2/ │ │ │ │ └── Db2Container.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── Db2TestImages.java │ │ │ ├── db2/ │ │ │ │ └── Db2ContainerTest.java │ │ │ └── jdbc/ │ │ │ └── db2/ │ │ │ └── DB2JDBCDriverTest.java │ │ └── resources/ │ │ ├── container-license-acceptance.txt │ │ └── logback-test.xml │ ├── elasticsearch/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── elasticsearch/ │ │ │ │ └── ElasticsearchContainer.java │ │ │ └── resources/ │ │ │ └── elasticsearch-default-memory-vm.options │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── elasticsearch/ │ │ │ └── ElasticsearchContainerTest.java │ │ └── resources/ │ │ ├── http_ca.crt │ │ ├── logback-test.xml │ │ └── test-custom-memory-jvm.options │ ├── gcloud/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ ├── BigQueryEmulatorContainer.java │ │ │ │ ├── BigtableEmulatorContainer.java │ │ │ │ ├── DatastoreEmulatorContainer.java │ │ │ │ ├── FirestoreEmulatorContainer.java │ │ │ │ ├── PubSubEmulatorContainer.java │ │ │ │ └── SpannerEmulatorContainer.java │ │ │ └── gcloud/ │ │ │ ├── BigQueryEmulatorContainer.java │ │ │ ├── BigtableEmulatorContainer.java │ │ │ ├── DatastoreEmulatorContainer.java │ │ │ ├── FirestoreEmulatorContainer.java │ │ │ ├── PubSubEmulatorContainer.java │ │ │ └── SpannerEmulatorContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── gcloud/ │ │ │ ├── BigQueryEmulatorContainerTest.java │ │ │ ├── BigtableEmulatorContainerTest.java │ │ │ ├── DatastoreEmulatorContainerTest.java │ │ │ ├── FirestoreEmulatorContainerTest.java │ │ │ ├── PubSubEmulatorContainerTest.java │ │ │ └── SpannerEmulatorContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── grafana/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── grafana/ │ │ │ └── LgtmStackContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── grafana/ │ │ │ └── LgtmStackContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── hivemq/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── hivemq/ │ │ │ ├── HiveMQContainer.java │ │ │ ├── HiveMQExtension.java │ │ │ └── PathUtil.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── hivemq/ │ │ │ ├── ContainerWithControlCenterIT.java │ │ │ ├── ContainerWithCustomConfigIT.java │ │ │ ├── ContainerWithExtensionFromDirectoryIT.java │ │ │ ├── ContainerWithExtensionIT.java │ │ │ ├── ContainerWithExtensionSubclassIT.java │ │ │ ├── ContainerWithFileInExtensionHomeIT.java │ │ │ ├── ContainerWithFileInHomeIT.java │ │ │ ├── ContainerWithLicenseIT.java │ │ │ ├── ContainerWithoutPlatformExtensionsIT.java │ │ │ ├── CreateFileInCopiedDirectoryIT.java │ │ │ ├── CreateFileInExtensionDirectoryIT.java │ │ │ ├── DisableEnableExtensionFromDirectoryIT.java │ │ │ ├── DisableEnableExtensionIT.java │ │ │ ├── HiveMQExtensionTest.java │ │ │ ├── HiveMQTestContainerCore.java │ │ │ ├── PathUtilTest.java │ │ │ ├── docs/ │ │ │ │ ├── DemoDisableExtensionsIT.java │ │ │ │ ├── DemoExtensionTestsIT.java │ │ │ │ ├── DemoFilesIT.java │ │ │ │ └── DemoHiveMQContainerIT.java │ │ │ └── util/ │ │ │ ├── MyExtension.java │ │ │ ├── MyExtensionWithSubclasses.java │ │ │ ├── PublishModifier.java │ │ │ └── TestPublishModifiedUtil.java │ │ └── resources/ │ │ ├── additionalFile.txt │ │ ├── config.xml │ │ ├── inMemoryConfig.xml │ │ ├── logback-test.xml │ │ ├── modifier-extension/ │ │ │ ├── hivemq-extension.xml │ │ │ └── modifier-extension-1.0-SNAPSHOT.jar │ │ ├── modifier-extension-wrong-name/ │ │ │ ├── hivemq-extension.xml │ │ │ └── modifier-extension-1.0-SNAPSHOT.jar │ │ ├── myExtensionLicense.elic │ │ └── myLicense.lic │ ├── influxdb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── containers/ │ │ │ └── InfluxDBContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── containers/ │ │ │ ├── InfluxDBContainerTest.java │ │ │ ├── InfluxDBContainerV1Test.java │ │ │ └── InfluxDBTestUtils.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── jdbc/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── JdbcDatabaseContainer.java │ │ │ │ │ └── JdbcDatabaseContainerProvider.java │ │ │ │ └── jdbc/ │ │ │ │ ├── ConnectionDelegate.java │ │ │ │ ├── ConnectionUrl.java │ │ │ │ ├── ConnectionWrapper.java │ │ │ │ ├── ContainerDatabaseDriver.java │ │ │ │ ├── ContainerLessJdbcDelegate.java │ │ │ │ ├── JdbcDatabaseDelegate.java │ │ │ │ └── ext/ │ │ │ │ └── ScriptUtils.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── java.sql.Driver │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── JdbcDatabaseContainerTest.java │ │ │ └── jdbc/ │ │ │ ├── ConnectionUrlDriversTests.java │ │ │ ├── ConnectionUrlTest.java │ │ │ ├── ContainerDatabaseDriverTest.java │ │ │ ├── JdbcDatabaseDelegateTest.java │ │ │ └── MissingJdbcDriverTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── jdbc-test/ │ │ ├── build.gradle │ │ ├── sql/ │ │ │ └── init_mysql.sql │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── db/ │ │ │ │ └── AbstractContainerDatabaseTest.java │ │ │ └── jdbc/ │ │ │ └── AbstractJDBCDriverTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── junit-jupiter/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── junit/ │ │ │ └── jupiter/ │ │ │ ├── Container.java │ │ │ ├── DockerAvailableDetector.java │ │ │ ├── EnabledIfDockerAvailable.java │ │ │ ├── EnabledIfDockerAvailableCondition.java │ │ │ ├── FilesystemFriendlyNameGenerator.java │ │ │ ├── Testcontainers.java │ │ │ ├── TestcontainersExtension.java │ │ │ └── TestcontainersTestDescription.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── junit/ │ │ │ └── jupiter/ │ │ │ ├── ComposeContainerTests.java │ │ │ ├── DockerComposeContainerTests.java │ │ │ ├── EnabledIfDockerAvailableTests.java │ │ │ ├── FilesystemFriendlyNameGeneratorTest.java │ │ │ ├── JUnitJupiterTestImages.java │ │ │ ├── MetaAnnotationTest.java │ │ │ ├── MixedLifecycleTests.java │ │ │ ├── ParallelExecutionTests.java │ │ │ ├── PostgresContainerTests.java │ │ │ ├── TestLifecycleAwareContainerMock.java │ │ │ ├── TestLifecycleAwareExceptionCapturingTest.java │ │ │ ├── TestLifecycleAwareMethodTest.java │ │ │ ├── TestcontainersExtensionTests.java │ │ │ ├── TestcontainersNestedRestartedContainerTests.java │ │ │ ├── TestcontainersNestedSharedContainerTests.java │ │ │ ├── TestcontainersRestartBetweenTests.java │ │ │ ├── TestcontainersSharedContainerTests.java │ │ │ ├── WrongAnnotationUsageTests.java │ │ │ └── inheritance/ │ │ │ ├── AbstractTestBase.java │ │ │ ├── InheritedTests.java │ │ │ └── RedisContainer.java │ │ └── resources/ │ │ ├── docker-compose.yml │ │ └── logback-test.xml │ ├── k3s/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── k3s/ │ │ │ └── K3sContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── k3s/ │ │ │ ├── Fabric8K3sContainerTest.java │ │ │ ├── KubectlContainerTest.java │ │ │ └── OfficialClientK3sContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── k6/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── k6/ │ │ │ └── K6Container.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── k6/ │ │ │ └── K6ContainerTests.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── scripts/ │ │ └── test.js │ ├── kafka/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── KafkaContainer.java │ │ │ └── kafka/ │ │ │ ├── ConfluentKafkaContainer.java │ │ │ ├── KafkaContainer.java │ │ │ └── KafkaHelper.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── AbstractKafka.java │ │ │ ├── KCatContainer.java │ │ │ ├── containers/ │ │ │ │ └── KafkaContainerTest.java │ │ │ └── kafka/ │ │ │ ├── CompatibleApacheKafkaImageTest.java │ │ │ ├── ConfluentKafkaContainerTest.java │ │ │ └── KafkaContainerTest.java │ │ └── resources/ │ │ ├── kafka_server_jaas.conf │ │ └── logback-test.xml │ ├── ldap/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── ldap/ │ │ │ └── LLdapContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── ldap/ │ │ │ └── LLdapContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── localstack/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── localstack/ │ │ │ │ └── LocalStackContainer.java │ │ │ └── localstack/ │ │ │ └── LocalStackContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── localstack/ │ │ │ │ ├── LegacyModeTest.java │ │ │ │ └── LocalstackTestImages.java │ │ │ └── localstack/ │ │ │ └── LocalStackContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── mariadb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── MariaDBContainer.java │ │ │ │ │ ├── MariaDBContainerProvider.java │ │ │ │ │ ├── MariaDBR2DBCDatabaseContainer.java │ │ │ │ │ └── MariaDBR2DBCDatabaseContainerProvider.java │ │ │ │ └── mariadb/ │ │ │ │ ├── MariaDBContainer.java │ │ │ │ └── MariaDBR2DBCDatabaseContainer.java │ │ │ └── resources/ │ │ │ ├── META-INF/ │ │ │ │ └── services/ │ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ │ └── mariadb-default-conf/ │ │ │ └── my.cnf │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── MariaDBTestImages.java │ │ │ ├── containers/ │ │ │ │ └── MariaDBR2DBCDatabaseContainerTest.java │ │ │ ├── jdbc/ │ │ │ │ └── mariadb/ │ │ │ │ └── MariaDBJDBCDriverTest.java │ │ │ └── mariadb/ │ │ │ ├── MariaDBContainerTest.java │ │ │ └── MariaDBR2DBCDatabaseContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── somepath/ │ │ ├── init_mariadb.sql │ │ ├── init_unicode_mariadb.sql │ │ └── mariadb_conf_override/ │ │ └── my.cnf │ ├── milvus/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── milvus/ │ │ │ │ └── MilvusContainer.java │ │ │ └── resources/ │ │ │ └── testcontainers/ │ │ │ └── embedEtcd.yaml │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── milvus/ │ │ │ └── MilvusContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── minio/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── containers/ │ │ │ └── MinIOContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── containers/ │ │ │ └── MinIOContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── object_to_upload.txt │ ├── mockserver/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── MockServerContainer.java │ │ │ └── mockserver/ │ │ │ └── MockServerContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── mockserver/ │ │ │ └── MockServerContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── mongodb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ └── MongoDBContainer.java │ │ │ │ └── mongodb/ │ │ │ │ ├── MongoDBAtlasLocalContainer.java │ │ │ │ └── MongoDBContainer.java │ │ │ └── resources/ │ │ │ └── sharding.sh │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── mongodb/ │ │ │ ├── AbstractMongo.java │ │ │ ├── AtlasLocalDataAccess.java │ │ │ ├── CompatibleImageTest.java │ │ │ ├── MongoDBAtlasLocalContainerTest.java │ │ │ └── MongoDBContainerTest.java │ │ └── resources/ │ │ ├── atlas-local-index.json │ │ └── logback-test.xml │ ├── mssqlserver/ │ │ ├── AUTHORS │ │ ├── LICENSE │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── MSSQLR2DBCDatabaseContainer.java │ │ │ │ │ ├── MSSQLR2DBCDatabaseContainerProvider.java │ │ │ │ │ ├── MSSQLServerContainer.java │ │ │ │ │ └── MSSQLServerContainerProvider.java │ │ │ │ └── mssqlserver/ │ │ │ │ ├── MSSQLR2DBCDatabaseContainer.java │ │ │ │ └── MSSQLServerContainer.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── MSSQLServerTestImages.java │ │ │ ├── containers/ │ │ │ │ └── MSSQLR2DBCDatabaseContainerTest.java │ │ │ ├── jdbc/ │ │ │ │ └── mssqlserver/ │ │ │ │ └── MSSQLServerJDBCDriverTest.java │ │ │ └── mssqlserver/ │ │ │ ├── CustomPasswordMSSQLServerTest.java │ │ │ ├── MSSQLR2DBCDatabaseContainerTest.java │ │ │ └── MSSQLServerContainerTest.java │ │ └── resources/ │ │ ├── container-license-acceptance.txt │ │ └── logback-test.xml │ ├── mysql/ │ │ ├── build.gradle │ │ ├── sql/ │ │ │ └── init_mysql.sql │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── MySQLContainer.java │ │ │ │ │ ├── MySQLContainerProvider.java │ │ │ │ │ ├── MySQLR2DBCDatabaseContainer.java │ │ │ │ │ └── MySQLR2DBCDatabaseContainerProvider.java │ │ │ │ └── mysql/ │ │ │ │ ├── MySQLContainer.java │ │ │ │ └── MySQLR2DBCDatabaseContainer.java │ │ │ └── resources/ │ │ │ ├── META-INF/ │ │ │ │ └── services/ │ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ │ └── mysql-default-conf/ │ │ │ └── my.cnf │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── MySQLTestImages.java │ │ │ ├── containers/ │ │ │ │ ├── MySQLR2DBCDatabaseContainerTest.java │ │ │ │ └── MySQLRootAccountTest.java │ │ │ ├── jdbc/ │ │ │ │ └── mysql/ │ │ │ │ ├── JDBCDriverWithPoolTest.java │ │ │ │ ├── MySQLDatabaseContainerDriverTest.java │ │ │ │ └── MySQLJDBCDriverTest.java │ │ │ └── mysql/ │ │ │ ├── MultiVersionMySQLTest.java │ │ │ ├── MySQLContainerTest.java │ │ │ └── MySQLR2DBCDatabaseContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── somepath/ │ │ ├── init_mysql.sql │ │ ├── init_unicode_mysql.sql │ │ └── mysql_conf_override/ │ │ └── my.cnf │ ├── neo4j/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ └── src/ │ │ ├── custom-neo4j-plugin/ │ │ │ └── java/ │ │ │ └── ac/ │ │ │ └── simons/ │ │ │ └── neo4j/ │ │ │ └── demos/ │ │ │ └── plugins/ │ │ │ └── HelloWorld.java │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── Neo4jContainer.java │ │ │ └── neo4j/ │ │ │ └── Neo4jContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── neo4j/ │ │ │ └── Neo4jContainerTest.java │ │ └── resources/ │ │ ├── example-container-license-acceptance.txt │ │ └── logback-test.xml │ ├── nginx/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── NginxContainer.java │ │ │ └── nginx/ │ │ │ └── NginxContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── nginx/ │ │ │ └── NginxContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── oceanbase/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── oceanbase/ │ │ │ │ ├── OceanBaseCEContainer.java │ │ │ │ ├── OceanBaseCEContainerProvider.java │ │ │ │ └── OceanBaseJdbcUtils.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── oceanbase/ │ │ │ ├── OceanBaseJdbcDriverTest.java │ │ │ └── SimpleOceanBaseCETest.java │ │ └── resources/ │ │ ├── init.sql │ │ └── logback-test.xml │ ├── ollama/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── ollama/ │ │ │ └── OllamaContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── ollama/ │ │ │ └── OllamaContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── openfga/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── openfga/ │ │ │ └── OpenFGAContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── openfga/ │ │ │ └── OpenFGAContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── oracle-free/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── oracle/ │ │ │ │ ├── OracleContainer.java │ │ │ │ ├── OracleContainerProvider.java │ │ │ │ ├── OracleR2DBCDatabaseContainer.java │ │ │ │ └── OracleR2DBCDatabaseContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── junit/ │ │ │ │ └── oracle/ │ │ │ │ └── SimpleOracleTest.java │ │ │ └── oracle/ │ │ │ ├── jdbc/ │ │ │ │ └── OracleJDBCDriverTest.java │ │ │ └── r2dbc/ │ │ │ └── OracleR2DBCDatabaseContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── oracle-xe/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── containers/ │ │ │ │ ├── OracleContainer.java │ │ │ │ ├── OracleContainerProvider.java │ │ │ │ ├── OracleR2DBCDatabaseContainer.java │ │ │ │ └── OracleR2DBCDatabaseContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ ├── jdbc/ │ │ │ │ │ └── OracleJDBCDriverTest.java │ │ │ │ └── r2dbc/ │ │ │ │ └── OracleR2DBCDatabaseContainerTest.java │ │ │ └── junit/ │ │ │ └── oracle/ │ │ │ └── SimpleOracleTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── orientdb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── OrientDBContainer.java │ │ │ └── orientdb/ │ │ │ └── OrientDBContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── orientdb/ │ │ │ └── OrientDBContainerTest.java │ │ └── resources/ │ │ ├── initscript.osql │ │ ├── logback-test.xml │ │ └── orientdb-server-config.xml │ ├── pinecone/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── pinecone/ │ │ │ └── PineconeLocalContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── pinecone/ │ │ │ └── PineconeLocalContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── postgresql/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── PgVectorContainerProvider.java │ │ │ │ │ ├── PostgisContainerProvider.java │ │ │ │ │ ├── PostgreSQLContainer.java │ │ │ │ │ ├── PostgreSQLContainerProvider.java │ │ │ │ │ ├── PostgreSQLR2DBCDatabaseContainer.java │ │ │ │ │ ├── PostgreSQLR2DBCDatabaseContainerProvider.java │ │ │ │ │ └── TimescaleDBContainerProvider.java │ │ │ │ └── postgresql/ │ │ │ │ ├── PostgreSQLContainer.java │ │ │ │ └── PostgreSQLR2DBCDatabaseContainer.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ ├── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ │ └── org.testcontainers.r2dbc.R2DBCDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── PostgreSQLTestImages.java │ │ │ ├── containers/ │ │ │ │ ├── PostgreSQLConnectionURLTest.java │ │ │ │ ├── PostgreSQLR2DBCDatabaseContainerTest.java │ │ │ │ └── TimescaleDBContainerTest.java │ │ │ ├── jdbc/ │ │ │ │ ├── DatabaseDriverShutdownTest.java │ │ │ │ ├── DatabaseDriverTmpfsTest.java │ │ │ │ ├── pgvector/ │ │ │ │ │ └── PgVectorJDBCDriverTest.java │ │ │ │ ├── postgis/ │ │ │ │ │ └── PostgisJDBCDriverTest.java │ │ │ │ ├── postgresql/ │ │ │ │ │ └── PostgreSQLJDBCDriverTest.java │ │ │ │ └── timescaledb/ │ │ │ │ └── TimescaleDBJDBCDriverTest.java │ │ │ └── postgresql/ │ │ │ ├── CompatibleImageTest.java │ │ │ ├── PostgreSQLContainerTest.java │ │ │ └── PostgreSQLR2DBCDatabaseContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── somepath/ │ │ ├── init_postgresql.sql │ │ ├── init_postgresql_2.sql │ │ └── init_timescaledb.sql │ ├── presto/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── containers/ │ │ │ │ ├── PrestoContainer.java │ │ │ │ └── PrestoContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── PrestoTestImages.java │ │ │ ├── containers/ │ │ │ │ └── PrestoContainerTest.java │ │ │ └── jdbc/ │ │ │ └── presto/ │ │ │ └── PrestoJDBCDriverTest.java │ │ └── resources/ │ │ ├── initial.sql │ │ └── logback-test.xml │ ├── pulsar/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── PulsarContainer.java │ │ │ └── pulsar/ │ │ │ └── PulsarContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── pulsar/ │ │ │ ├── AbstractPulsar.java │ │ │ ├── CompatibleApachePulsarImageTest.java │ │ │ └── PulsarContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── qdrant/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── qdrant/ │ │ │ └── QdrantContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── qdrant/ │ │ │ └── QdrantContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── questdb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── containers/ │ │ │ │ ├── LegacyQuestDBProvider.java │ │ │ │ ├── QuestDBContainer.java │ │ │ │ └── QuestDBProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── QuestDBTestImages.java │ │ │ ├── jdbc/ │ │ │ │ └── questdb/ │ │ │ │ └── QuestDBJDBCDriverTest.java │ │ │ └── junit/ │ │ │ └── questdb/ │ │ │ └── SimpleQuestDBTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── r2dbc/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── r2dbc/ │ │ │ │ ├── CancellableSubscription.java │ │ │ │ ├── ConnectionPublisher.java │ │ │ │ ├── EmptySubscription.java │ │ │ │ ├── Hidden.java │ │ │ │ ├── R2DBCDatabaseContainer.java │ │ │ │ ├── R2DBCDatabaseContainerProvider.java │ │ │ │ └── TestcontainersR2DBCConnectionFactory.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── io.r2dbc.spi.ConnectionFactoryProvider │ │ ├── test/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── r2dbc/ │ │ │ │ └── TestcontainersR2DBCConnectionFactoryTest.java │ │ │ └── resources/ │ │ │ └── logback-test.xml │ │ └── testFixtures/ │ │ └── java/ │ │ └── org/ │ │ └── testcontainers/ │ │ └── r2dbc/ │ │ └── AbstractR2DBCDatabaseContainerTest.java │ ├── rabbitmq/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── RabbitMQContainer.java │ │ │ └── rabbitmq/ │ │ │ └── RabbitMQContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── rabbitmq/ │ │ │ ├── RabbitMQContainerTest.java │ │ │ └── RabbitMQTestImages.java │ │ └── resources/ │ │ ├── certs/ │ │ │ ├── ca_certificate.pem │ │ │ ├── ca_key.pem │ │ │ ├── client_certificate.pem │ │ │ ├── client_key.p12 │ │ │ ├── client_key.pem │ │ │ ├── server_certificate.pem │ │ │ ├── server_key.p12 │ │ │ ├── server_key.pem │ │ │ └── truststore.jks │ │ ├── logback-test.xml │ │ ├── rabbitmq-custom.conf │ │ └── rabbitmq-custom.config │ ├── redpanda/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── redpanda/ │ │ │ │ └── RedpandaContainer.java │ │ │ └── resources/ │ │ │ └── testcontainers/ │ │ │ ├── bootstrap.yaml.ftl │ │ │ ├── entrypoint-tc.sh │ │ │ └── redpanda.yaml.ftl │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── redpanda/ │ │ │ ├── AbstractRedpanda.java │ │ │ ├── CompatibleImageTest.java │ │ │ └── RedpandaContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── scylladb/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── scylladb/ │ │ │ └── ScyllaDBContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── scylladb/ │ │ │ └── ScyllaDBContainerTest.java │ │ └── resources/ │ │ ├── keys/ │ │ │ ├── node0.cer │ │ │ ├── node0.p12 │ │ │ ├── scylla.cer.pem │ │ │ ├── scylla.key.pem │ │ │ ├── scylla.keystore │ │ │ └── scylla.truststore │ │ ├── logback-test.xml │ │ └── scylla-test-ssl/ │ │ └── scylla.yaml │ ├── selenium/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ ├── BrowserWebDriverContainer.java │ │ │ │ ├── DefaultRecordingFileFactory.java │ │ │ │ ├── RecordingFileFactory.java │ │ │ │ └── SeleniumUtils.java │ │ │ └── selenium/ │ │ │ └── BrowserWebDriverContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── DefaultRecordingFileFactoryTest.java │ │ │ ├── junit/ │ │ │ │ ├── SeleniumStartTest.java │ │ │ │ └── SeleniumUtilsTest.java │ │ │ └── selenium/ │ │ │ ├── BaseWebDriverContainerTest.java │ │ │ ├── BrowserWebDriverContainerTest.java │ │ │ ├── ChromeRecordingWebDriverContainerTest.java │ │ │ ├── ChromeWebDriverContainerTest.java │ │ │ ├── ContainerWithoutCapabilitiesTest.java │ │ │ ├── CustomWaitTimeoutWebDriverContainerTest.java │ │ │ ├── EdgeWebDriverContainerTest.java │ │ │ ├── FirefoxWebDriverContainerTest.java │ │ │ ├── LocalServerWebDriverContainerTest.java │ │ │ └── SpecificImageNameWebDriverContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ ├── manifests/ │ │ │ ├── MANIFEST-2.45.0.MF │ │ │ └── MANIFEST-3.5.2.MF │ │ └── server/ │ │ └── index.html │ ├── solace/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── solace/ │ │ │ ├── Service.java │ │ │ └── SolaceContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── solace/ │ │ │ ├── SolaceContainerAMQPTest.java │ │ │ ├── SolaceContainerMQTTTest.java │ │ │ ├── SolaceContainerRESTTest.java │ │ │ └── SolaceContainerSMFTest.java │ │ └── resources/ │ │ ├── client.pfx │ │ ├── logback-test.xml │ │ ├── rootCA.crt │ │ ├── solace.pem │ │ └── truststore │ ├── solr/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ ├── SolrClientUtils.java │ │ │ │ ├── SolrClientUtilsException.java │ │ │ │ ├── SolrContainer.java │ │ │ │ └── SolrContainerConfiguration.java │ │ │ └── solr/ │ │ │ └── SolrContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── solr/ │ │ │ └── SolrContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── spock/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── groovy/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── spock/ │ │ │ ├── DockerAvailableDetector.groovy │ │ │ ├── SpockTestDescription.groovy │ │ │ ├── Testcontainers.groovy │ │ │ ├── TestcontainersExtension.groovy │ │ │ └── TestcontainersMethodInterceptor.groovy │ │ └── test/ │ │ ├── groovy/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── spock/ │ │ │ ├── ComposeContainerIT.groovy │ │ │ ├── DockerComposeContainerIT.groovy │ │ │ ├── MySqlContainerIT.groovy │ │ │ ├── PostgresContainerIT.groovy │ │ │ ├── SharedComposeContainerIT.groovy │ │ │ ├── SharedDockerComposeContainerIT.groovy │ │ │ ├── SpockTestImages.groovy │ │ │ ├── TestHierarchyIT.groovy │ │ │ ├── TestLifecycleAwareContainerMock.java │ │ │ ├── TestLifecycleAwareIT.groovy │ │ │ ├── TestcontainersExtensionTest.groovy │ │ │ ├── TestcontainersRestartBetweenTestsIT.groovy │ │ │ └── TestcontainersSharedContainerIT.groovy │ │ └── resources/ │ │ ├── docker-compose.yml │ │ └── logback-test.xml │ ├── tidb/ │ │ ├── build.gradle │ │ ├── sql/ │ │ │ └── init_mysql.sql │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── tidb/ │ │ │ │ ├── TiDBContainer.java │ │ │ │ └── TiDBContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── TiDBTestImages.java │ │ │ ├── jdbc/ │ │ │ │ └── tidb/ │ │ │ │ └── TiDBJDBCDriverTest.java │ │ │ └── tidb/ │ │ │ └── TiDBContainerTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── somepath/ │ │ └── init_tidb.sql │ ├── timeplus/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ └── timeplus/ │ │ │ │ ├── TimeplusContainer.java │ │ │ │ └── TimeplusContainerProvider.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── TimeplusImages.java │ │ │ ├── junit/ │ │ │ │ └── timeplus/ │ │ │ │ └── TimeplusJDBCDriverTest.java │ │ │ └── timeplus/ │ │ │ └── TimeplusContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── toxiproxy/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── containers/ │ │ │ │ └── ToxiproxyContainer.java │ │ │ └── toxiproxy/ │ │ │ └── ToxiproxyContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── toxiproxy/ │ │ │ └── ToxiproxyContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── trino/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── testcontainers/ │ │ │ │ ├── containers/ │ │ │ │ │ ├── TrinoContainer.java │ │ │ │ │ └── TrinoContainerProvider.java │ │ │ │ └── trino/ │ │ │ │ └── TrinoContainer.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ ├── TrinoTestImages.java │ │ │ ├── jdbc/ │ │ │ │ └── trino/ │ │ │ │ └── TrinoJDBCDriverTest.java │ │ │ └── trino/ │ │ │ └── TrinoContainerTest.java │ │ └── resources/ │ │ ├── initial.sql │ │ └── logback-test.xml │ ├── typesense/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── typesense/ │ │ │ └── TypesenseContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── typesense/ │ │ │ └── TypesenseContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── vault/ │ │ ├── AUTHORS │ │ ├── LICENSE │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── vault/ │ │ │ ├── VaultContainer.java │ │ │ └── VaultLogLevel.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── vault/ │ │ │ ├── VaultClientTest.java │ │ │ └── VaultContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── weaviate/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── weaviate/ │ │ │ └── WeaviateContainer.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── weaviate/ │ │ │ └── WeaviateContainerTest.java │ │ └── resources/ │ │ └── logback-test.xml │ └── yugabytedb/ │ ├── build.gradle │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── testcontainers/ │ │ │ └── containers/ │ │ │ ├── YugabyteDBYCQLContainer.java │ │ │ ├── YugabyteDBYSQLContainer.java │ │ │ ├── YugabyteDBYSQLContainerProvider.java │ │ │ ├── delegate/ │ │ │ │ ├── AbstractYCQLDelegate.java │ │ │ │ └── YugabyteDBYCQLDelegate.java │ │ │ └── strategy/ │ │ │ ├── YugabyteDBYCQLWaitStrategy.java │ │ │ └── YugabyteDBYSQLWaitStrategy.java │ │ └── resources/ │ │ └── META-INF/ │ │ └── services/ │ │ └── org.testcontainers.containers.JdbcDatabaseContainerProvider │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── testcontainers/ │ │ ├── jdbc/ │ │ │ └── yugabytedb/ │ │ │ └── YugabyteDBYSQLJDBCDriverTest.java │ │ └── junit/ │ │ └── yugabytedb/ │ │ ├── YugabyteDBYCQLTest.java │ │ └── YugabyteDBYSQLTest.java │ └── resources/ │ ├── init/ │ │ └── init_yql.sql │ └── logback-test.xml ├── requirements.txt ├── runtime.txt ├── settings.gradle ├── smoke-test/ │ ├── build.gradle │ ├── gradle/ │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ ├── settings.gradle │ └── turbo-mode/ │ ├── build.gradle │ └── src/ │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── testcontainers/ │ │ └── example/ │ │ ├── AbstractRedisContainer.java │ │ ├── RedisContainer1Test.java │ │ ├── RedisContainer2Test.java │ │ ├── RedisContainer3Test.java │ │ └── RedisContainer4Test.java │ └── resources/ │ └── logback-test.xml └── test-support/ ├── build.gradle └── src/ ├── main/ │ └── java/ │ └── org/ │ └── testcontainers/ │ └── testsupport/ │ ├── Flaky.java │ └── FlakyTestJUnit4RetryRule.java └── test/ ├── java/ │ └── org/ │ └── testcontainers/ │ └── testsupport/ │ └── FlakyRuleTest.java └── resources/ └── logback-test.xml