创建映像(构建)后无法在 docker 上 运行 Kafka

Not able to run Kafka on docker after creating image(build)

Dockerfile

From centos:centos6
COPY ./confluent-4.1.0 /etc/confluent-4.1.0
RUN echo 'export CONFLUENT_HOME="/etc/confluent-4.1.0"' >> /root/.bashrc
RUN echo 'export PATH="$PATH:$CONFLUENT_HOME/bin"' >>  /root/.bashrc
WORKDIR /etc/confluent-4.1.0/bin/

EXPOSE 2181
EXPOSE 8082
EXPOSE 9092

CMD ["confluent","start"]

构建命令:-docker build -f Dockerfile -t kafkademo .(构建成功)

运行 命令:- sudo docker 运行 -i -t kafkademo(错误) 未找到可执行文件 $PATH

要解决您的问题,您可以将您的导出交换为:

ENV CONFLUENT_HOME="/etc/confluent-4.1.0"
ENV PATH="${PATH}:$CONFLUENT_HOME/bin"

当docker运行容器时,他不尊重.bashrc文件。

此外,我强烈建议使用 dockerhub 上的官方融合图像:https://hub.docker.com/r/confluentinc/cp-kafka/