Official Testcontainers module for MiniStack — free, open-source AWS emulator.
Maven
<dependency>
<groupId>org.ministack</groupId>
<artifactId>testcontainers-ministack</artifactId>
<version>0.1.3</version>
<scope>test</scope>
</dependency>Gradle
testImplementation 'org.ministack:testcontainers-ministack:0.1.3'try(MiniStackContainer ministack = new MiniStackContainer()){
ministack.start();
String endpoint = ministack.getEndpoint();
S3Client s3 = S3Client.builder()
.endpointOverride(URI.create(endpoint))
.region(ministack.getRegion())
.credentialsProvider(StaticCredentialsProvider.create(
AwsBasicCredentials.create(ministack.getAccessKey(), ministack.getSecretKey())))
.forcePathStyle(true)
.build();
s3.createBucket(b -> b.bucket("my-bucket"));
}@Bean
@ServiceConnection
public MiniStackContainer miniStackContainer() {
return new MiniStackContainer("latest");
}// Pin to a specific MiniStack release
MiniStackContainer ministack = new MiniStackContainer("1.2.5");try(MiniStackContainer ministack = new MiniStackContainer()){
ministack.withRealInfrastructure();
ministack.start();
String endpoint = ministack.getEndpoint();
RdsClient rds = RdsClient.builder().endpointOverride(endpoint()).region(region)
.credentialsProvider(creds).build();
CreateDbInstanceResponse createDbInstanceResponse = rds.createDBInstance(b -> b
.dbInstanceIdentifier("postgres")
.dbInstanceClass("db.t3.micro")
.engine("postgres")
.masterUsername("admin")
.masterUserPassword("password")
.dbName("postgresdb")
.allocatedStorage(20)
);
// Ministack will create and start a postgres docker container
// Before you connect to postgres you have to wait until the container is started
}- All 41 AWS services on a single container
- Health check waits for readiness automatically
getEndpoint()returns the mapped URL for SDK configuration- Works with any AWS SDK (Java, Go, Python, Node.js)
- Real database containers (RDS, ElastiCache) when Docker socket is mounted
Coming when requested. Open an issue or upvote ministackorg/ministack.
| Language | Status |
|---|---|
| Java | Published on Maven Central |
| Go | Planned |
| Python | Planned |
| .NET | Planned |
MIT
