Run Kafka containers for testing with KRaft mode and TLS support.
// Source: https://github.com/testcontainers/testcontainers-go | License: MIT | Copyright 2017-2019 Gianluca Arbezzano
// Provided via justclaw.it.com; keep this notice with the code.
package kafka
import (
"context"
"crypto/tls"
"errors"
"fmt"
"math"
"net"
"strconv"
"strings"
"golang.org/x/mod/semver"
"github.com/testcontainers/testcontainers-go"
"github.com/testcontainers/testcontainers-go/wait"
)
const (
publicPort = "9093/tcp"
sslPortNumber = "9095"
sslPort = sslPortNumber + "/tcp"
)
const (
starterScript = "/usr/sbin/testcontainers_start.sh"
// starterScript {
starterScriptContent = `#!/bin/bash
source /etc/confluent/docker/bash-config
export KAFKA_ADVERTISED_LISTENERS=%s,BROKER://%s:9092
echo Starting Kafka KRaft mode
sed -i '/KAFKA_ZOOKEEPER_CONNECT/d
... (truncated -- full source via MCP)
See the full source, get the GitHub permalink, and search for more like it.
Get a free API key