关于kafka-eagle(EFAK)kafka管理工具实现镜像制作及发布
由于kafka-eagle官方没有提供docker镜像,我们自行构建一个镜像并发布运行。以下是其镜像制作的详细过程。
下载kafka-eagle软件包并上传到centos服务器
ps:本文默认用户已经搭建好了docker的运行环境。
①官网下载地址:Download - EFAK
使用vi编辑器创建镜像脚本Dockerfile
#kafka-eagle的 Dockerfile 镜像脚本
#引入依赖的java环境
FROM openjdk:8-alpine3.9
#环境变量配置
ENV KE_HOME=/opt/kafka-eagle
ENV EAGLE_VERSION=2.1.0
CMD ["/bin/bash"]
#工作目录
WORKDIR /opt/kafka-eagle
#作者信息
MAINTAINER wangchao "zilan1986@163.com"
#拷贝压缩包到临时目录
COPY kafka-eagle-bin-${EAGLE_VERSION}.tar.gz /tmp
#将上传的kafka-eagle压缩包解压放入镜像中并授权
RUN mkdir /opt/kafka-eagle -p && cd /opt && \
tar zxvf /tmp/kafka-eagle-bin-${EAGLE_VERSION}.tar.gz -C kafka-eagle --strip-components 1 && rm -f /tmp/kafka-eagle-bin-${EAGLE_VERSION}.tar.gz && \
cd kafka-eagle;tar zxvf efak-web-${EAGLE_VERSION}-bin.tar.gz --strip-components 1 && rm -f efak-web-${EAGLE_VERSION}-bin.tar.gz && \
chmod +x /opt/kafka-eagle/bin/ke.sh && \
mkdir -p /hadoop/kafka-eagle/db
#将kafka-eagle的启动文件拷贝到镜像中
COPY entrypoint.sh /opt/kafka-eagle/bin
#给启动文件授权
RUN chmod +x /opt/kafka-eagle/bin/entrypoint.sh
#暴露端口
EXPOSE 8048 8080
#镜像的启动命令
CMD ["sh","/opt/kafka-eagle/bin/entrypoint.sh"]