Automatic fallback to docker-compose v2 #620
Merged
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.
Resolves #617
Testcontainers uses the docker-compose library for interacting with docker-compose. This library invokes the underlying docker-compose CLI, with commands such as
docker-compose up
. This works fine when thedocker-compose
binary is installed. Docker-compose is now being included in the maindocker
binary, and accessible viadocker compose
. When this is the case, the docker-compose functionality fails because the library cannot find thedocker-compose
binary. Support fordocker compose
was added recently, but needs to be used explicitly.This PR tries to find a docker-compose binary, first with the old method, and then with the new (to avoid a breaking change), and will use a suitable client depending on which binary is found.
Tested locally by moving my docker-compose binary out of the PATH and seeing the fallback work.