docke-compose.yml
version:
'3'
services:
zookeeper:
image:
wurstmeister/zookeeper
container_name:
zookeeper
# always restart
restart:
always
ports:
-
2181
:
2181
kafka:
image:
wurstmeister/kafka
container_name:
kafka
ports:
-
9092
:
9092
# host ip
environment:
KAFKA_ADVERTISED_HOST_NAME:
宿主機IP
KAFKA_ZOOKEEPER_CONNECT:
zookeeper
:
2181
KAFKA_ADVERTISED_LISTENERS:
PLAINTEXT
:
//宿主機IP
:
9092
## 修改:宿主機IP
KAFKA_ADVERTISED_PORT:
9092
KAFKA_BROKER_ID:
1
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR:
1
depends_on:
-
zookeeper
# always restart
restart:
always
volumes:
-
./docker
.sock:
/var/run/docker.sock
kafka-manager:
image:
sheepkiller/kafka-manager
## 鏡像:開源的web管理kafka集羣的界面
environment:
ZK_HOSTS:
宿主機IP
## 修改:宿主機IP
ports:
-
"9000:9000"
|
啓動:
docker-compose up -d
測試:
登陸:docker exec -it kafka bash
創建topic:
kafka-topics.sh --create --topic test \
--zookeeper zookeeper:2181 --replication-factor 1 \
--partitions 1
查看topic:
kafka-topics.sh --zookeeper zookeeper:2181 \
--describe --topic test
生產消息:
kafka-console-producer.sh --topic=test \
--broker-list kafka:9092
消費消息:
kafka-console-consumer.sh \
--bootstrap-server kafka:9092 \
--from-beginning --topic test
按照上面的測試沒有問題的話,就證明搭建成功