创建文件夹
下载地址https://kafka.apache.org/community/downloads/https://kafka.apache.org/downloads
上传tar文件
实际版本kafka_2.13-2.8.1
tar加载为镜像
docker load -i zookeeper.tar
docker load -i kafka.tar
docker load -i efak.tar
加载完成后查看
docker images
通过docker-compose启动
新增一个docker-compose-kafka.yml文件,内容如下
version: '3' services: zookeeper: image: wurstmeister/zookeeper container_name: zookeeper ports: - 2181:2181 volumes: - "zookeeper-data:/data" - "zookeeper-datalog:/datalog" - "zookeeper-logs:/logs" restart: always kafka1: image: wurstmeister/kafka depends_on: - zookeeper container_name: kafka1 ports: - "9092:9092" environment: - "KAFKA_BROKER_ID=1" - "KAFKA_ZOOKEEPER_CONNECT=8.160.170.126:2181" - "KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://8.160.170.126:9092" - "KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092" - "KAFKA_LOG_DIRS=/data/kafka-data" volumes: - "kafka1-data:/data/kafka-data" - "kafka1-config:/opt/kafka/config" restart: always kafka2: image: wurstmeister/kafka depends_on: - zookeeper container_name: kafka2 ports: - "9093:9093" environment: - "KAFKA_BROKER_ID=2" - "KAFKA_ZOOKEEPER_CONNECT=8.160.170.126:2181" - "KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://8.160.170.126:9093" - "KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093" - "KAFKA_LOG_DIRS=/data/kafka-data" volumes: - "kafka2-data:/data/kafka-data" - "kafka2-config:/opt/kafka/config" restart: always kafka3: image: wurstmeister/kafka depends_on: - zookeeper container_name: kafka3 ports: - "9094:9094" environment: - "KAFKA_BROKER_ID=3" - "KAFKA_ZOOKEEPER_CONNECT=8.160.170.126:2181" - "KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://8.160.170.126:9094" - "KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094" - "KAFKA_LOG_DIRS=/data/kafka-data" volumes: - "kafka3-data:/data/kafka-data" - "kafka3-config:/opt/kafka/config" restart: always eagle: container_name: eagle image: nickzurich/efak:latest restart: always ports: - "8048:8048" environment: - "EFAK_CLUSTER_ZK_LIST=8.160.170.126:2181" volumes: - "kafka-eagle:/hadoop/kafka-eagle/db" volumes: kafka1-data: {} kafka2-data: {} kafka3-data: {} zookeeper-data: {} zookeeper-datalog: {} zookeeper-logs: {} kafka-eagle: {} kafka1-config: {} kafka2-config: {} kafka3-config: {}# 启动
docker compose -f docker-compose-kafka.yml up -d
# 查看容器
docker ps
问题与修复
访问eagle,报错了
http://8.160.170.126:8048/
查看日志
docker logs --tail 200 eagle
调整内存
修改docker-compose文件增加如下配置
- "JAVA_OPTS=-Xms512m -Xmx512m"
# 停止旧服务
docker compose -f docker-compose-kafka.yml down
# 启动
docker compose -f docker-compose-kafka.yml up -d
再次访问
Login - EFAK
http://8.160.170.126:8048/admin/123456
最终可以成功访问了