testcontainers / testcontainers/testcontainers-java
Split off the DockerClientFactory from this library
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 1.9k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 9
Description
Most times I play with other Docker/Java libraries than TestContainers I end up in a world of dependency or configuration hell. It seems like one of the biggest reasons for this is this library's DockerClientFactory class, which does a really excellent job of inspecting the environment and choosing the best way of running Docker on the local machine with very little user intervention.
This is particularly instrumental when trying to convince other users to adopt Docker-based unit testing—if it doesn't "just work" (as it does!), skeptical developers are prone to reject the whole thing.
Therefore, I think that this class and its supporting cast should perhaps be split off into a separate package or merged upstream so that more people and projects can benefit this most commendable work. I know I'd certainly use it!
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading core/src/main/java/org/testcontainers/DockerClientFactory.java and identifying the supporting classes involved in environment inspection and Docker runtime selection. The issue proposes separating this functionality into its own package or merging it upstream, so first clarify the extraction boundary and integration target; done means the resulting functionality can benefit other Docker/Java projects without the current dependency or configuration conflicts.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, java
- Domain
- testing, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100