Skip to content

Commit 4e15af8

Browse files
irasikhinbsideup
authored andcommitted
Add ability to specify docker image in KafkaContainer. (testcontainers#580)
* Add ability to specify docker image in KafkaContainer. * Added 'kafka.container.image' property to TestcontainersConfiguration in order to have an opportunity to replace default image with testcontainers.properties. * Return version argument to KafkaContainer constructor.
1 parent a9da708 commit 4e15af8

File tree

3 files changed

+9
-1
lines changed

3 files changed

+9
-1
lines changed

core/src/main/java/org/testcontainers/utility/TestcontainersConfiguration.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,10 @@ public String getRyukImage() {
5050
return (String) properties.getOrDefault("ryuk.container.image", "bsideup/moby-ryuk:0.2.2");
5151
}
5252

53+
public String getKafkaImage() {
54+
return (String) properties.getOrDefault("kafka.container.image", "confluentinc/cp-kafka");
55+
}
56+
5357
public boolean isDisableChecks() {
5458
return Boolean.parseBoolean((String) properties.getOrDefault("checks.disable", "false"));
5559
}

docs/usage/properties.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,8 @@ It takes a couple of seconds, but if you want to speed up your tests, you can di
3434
> **compose.container.image = docker/compose:1.8.0**
3535
> Used by Docker Compose integration
3636
37+
> **kafka.container.image = confluentinc/cp-kafka**
38+
> Used by KafkaContainer
39+
3740
Testcontainers uses public Docker images to perform different actions like startup checks, VNC recording and others.
3841
Some companies disallow the usage of Docker Hub, but you can override `*.image` properties with your own images from your private registry to workaround that.

modules/kafka/src/main/java/org/testcontainers/containers/KafkaContainer.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package org.testcontainers.containers;
22

33
import org.testcontainers.utility.Base58;
4+
import org.testcontainers.utility.TestcontainersConfiguration;
45

56
import java.util.stream.Stream;
67

@@ -23,7 +24,7 @@ public KafkaContainer() {
2324
}
2425

2526
public KafkaContainer(String confluentPlatformVersion) {
26-
super("confluentinc/cp-kafka:" + confluentPlatformVersion);
27+
super(TestcontainersConfiguration.getInstance().getKafkaImage() + ":" + confluentPlatformVersion);
2728

2829
withNetwork(Network.newNetwork());
2930
String networkAlias = "kafka-" + Base58.randomString(6);

0 commit comments

Comments
 (0)