Как выполнить команду kafka-configs внутри образа testcontainers kafka

Я использую образ testcontainers kafka, который совпадает с cp-kafka, мне нужно изменить кафку config с помощью команды:

./kafka-configs.sh --alter --entity-name <TOPIC_NAME> --entity-type topics --add-config message.timestamp.type=LogAppendTime --zookeeper <HOST>:<PORT>

У меня проблема с выполнением этой команды с помощью KafkaContainer::execInContainer, который не дает такого файла или каталога.

Я просмотрел образ github и конфлюентную установку на ubuntu, где он должен быть расположен, и безуспешно пробовал различные варианты.

Как правильно это сделать?


person marknorkin    schedule 01.02.2019    source источник
comment
В идеале вы должны запускать реальный Java API, который kafka-configs использует в ваших модульных тестах, а не вызывать сценарий оболочки   -  person OneCricketeer    schedule 01.02.2019


Ответы (1)


./kafka-configs.sh предполагает, что kafka-configs.sh доступен в текущем каталоге, что может быть не так (попробуйте вместо этого запустить cwd или ls -la и проверьте вывод).

Но если вы удалите ./ перед kafka-configs.sh, он должен использовать команду из переменной PATH, которая должна быть настроена внутри образа Kafka.

person bsideup    schedule 01.02.2019
comment
Я пробовал оба варианта безуспешно. ошибка kafka-config can not be found in $PATH - person marknorkin; 02.02.2019