Open
Description
On a meetup today I talked to @kiview who had been presenting testcontainers and mentioned the upcoming 2.0 refactor.
I suggest we take this opportunity to work out a language / implementation agnostic domain of behaviors for testcontainers so whatever implementation is used the API would be similar and easy to grasp.
This can also apply to conceptual problems like how to implement certain waiting strategies or how to integrate with docker-compose or Kubernetes.
I opened testcontainers/testcontainers-go#21 to track this on the go implementation which I'd like to contribute to.