docker镜像包下载地址
https://cloud.189.cn/web/share?code=EfyIBzrmYNbe(访问码:xyf4)
镜像版本

KAFKA_VERSION=2.8.1
ZOOKEEPER_VERSION=3.4.13docker-compose.yml
version: '3'
services:
zookeeper:
image: wurstmeister/zookeeper:latest
container_name: zookeeper
ports:
- "2181:2181"
environment:
ZOOKEEPER_SERVER_ID: 1
ZOOKEEPER_TICK_TIME: 2000
ZOOKEEPER_INIT_LIMIT: 5
ZOOKEEPER_SYNC_LIMIT: 2
kafka:
image: wurstmeister/kafka:latest
container_name: kafka
ports:
- "9093:9093" # 外部暴露的端口
expose:
- "9093" # 容器内部通信端口
environment:
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_LISTENERS: INSIDE_KAFKA://kafka:9093 # 设置监听的地址和端口
KAFKA_ADVERTISED_LISTENER: INSIDE_KAFKA://kafka:9093 # 使用容器的主机名作为广告地址
KAFKA_LISTENER_SECURITY_PROTOCOL: PLAINTEXT
KAFKA_LISTENER_NAME: INSIDE_KAFKA
KAFKA_LISTENER_INTERNAL: INSIDE_KAFKA:9093
KAFKA_LISTENER_OUTSIDE: 9093
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE_KAFKA:PLAINTEXT
KAFKA_LISTENER_NAME_INSIDE_KAFKA: INSIDE_KAFKA
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE_KAFKA # 确保 设置为 INSIDE_KAFKA
depends_on:
- zookeeper启动日志

注意事项
由于docker-compose部署时hostname设置的是kafka,因此,需要在客户端程序运行的主机上配置hosts文件,指向kafka所在服务器的真实IP,如下——

















