testcontainers / testcontainers/testcontainers-java

Ability to use external resources instead of Docker depending on system or environment property

Open
#3,848 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
8.7k
Forks
1.9k
Avg merge
2d 17h
Merged PRs (30d)
9

Description

I have faced with following issue. We use Testcontainers for our project, but on some laptops we do not have permissions to run Docker. Therefore we can't build the project and run all tests.

I have fixed this issue using Junit5 extension. I check system or environment property e.g. (mvn -Dhost=129.16.1.1). If this property does not exists, then I use Testcontainsers out of the box. Otherwise, I use instances that already deployed in given host.

This helps us run tests normally e.g. on Jenkins. By default if property host is not set. Or on laptop user can set up e.g. AWS EC2 instance with docker with required resources and use that remote docker to run application.

I think this could be useful feature for the whole project and offer to make me able to do a PullRequest instead of create my own smal Junit5 plugin and deploy it to the maven central.

Please, if you interested in this feature, I am ready to do it.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the proposed JUnit5 extension and Testcontainers' normal Docker usage path. Define how a system or environment host property selects already-deployed resources while preserving the default Docker behavior. Done should include an agreed configuration contract and coverage for both default and remote-host execution.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, java
Domain
devops, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.