创建映像(构建)后无法在 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/
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/