我正在尝试启动一个将执行如下命令的docker容器:
$KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper localhost:2181 --topic popota --partitions 1 --replication-factor 1
其中$ KAFKA_DOCKER_IMAGE,$ replication_factor和$ num_partitions是我用来执行此命令的脚本中定义的变量。 $ KAFKA_HOME是一个已在docker镜像中定义的环境变量。
我的问题是正在容器上执行的命令如下:
Send Port
它不会扩展$ KAFKA_HOME。 我怎么能这样做?
答案 0 :(得分:0)
我认为你必须使用-e标志
来提供环境变量https://docs.docker.com/engine/reference/run/#env-environment-variables
答案 1 :(得分:0)
我找到了解决方案:
docker run --net="host" -it --entrypoint bash $KAFKA_DOCKER_IMAGE -c "\$KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper localhost:2181 --topic $1 --partitions $num_partitions --replication-factor $replication_factor"