Improve support for alternative container runtimes #9140
+58
−25
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In several cases, alternative container runtimes offers a docker compatible API and populates the docker context accordingly.
However, in the current implementation of testcontainers, the context is often ignored as the
EnvironmentAndSystemPropertyClientProviderStrategy
only considers theDOCKER_HOST
override either through testcontainers property or the environment variables.Improve the support of multiple container runtimes by honoring the current docker context.
In addition, improve the detection of whether the Docker engine runs in a virtual machine without root access for the current user, so it removes the need to configure
TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE
in standard cases.This change has been tested with: