Official Module

StreamNative
We partner with software vendors to maintain and certify official modules.

Community Module

These modules are maintained by the community, outside of the Testcontainers project.

Description

Apache Pulsar is an open-source, distributed messaging and streaming platform. Messages can be consumed and acknowledged individually or consumed as streams with less than 5ms of latency.

Examples

Dependency:
<dependency>
    <groupId>org.testcontainers</groupId>
    <artifactId>pulsar</artifactId>
    <version>1.20.0</version>
    <scope>test</scope>
</dependency>
Usage:
var pulsar = new PulsarContainer(DockerImageName.parse("apachepulsar/pulsar:2.10.0"));
pulsar.start();
Dependency:
go get github.com/testcontainers/testcontainers-go/modules/pulsar
Usage:
pulsarContainer, err := pulsar.Run(context.Background(),
  "apachepulsar/pulsar:2.10.0",
  pulsar.WithPulsarEnv("brokerDeduplicationEnabled", "true"),
  pulsar.WithFunctionsWorker(),
  pulsar.WithTransactions(),
)
Dependency:
dotnet add package Testcontainers.Pulsar
Usage:
var pulsarContainer = new PulsarBuilder()
  .WithImage("apachepulsar/pulsar:2.10.0")
  .Build();
await pulsarContainer.StartAsync();
Dependency:
cargo add -F pulsar --dev testcontainers-modules
Usage:
testcontainers_modules::pulsar::Pulsar::default().start()