环境配置
docker run 部署
创建持久化卷
docker volume create zookeeper_data kafka_data
1、部署zookeeper 3.8.4
docker run -d \
--restart always \
--name zookeeper \
-p 2181:2181 \
-e ALLOW_ANONYMOUS_LOGIN=yes \
-v zookeeper_data:/bitnami/zookeeper \
bitnami/zookeeper:3.8.4
2、部署kafka 3.9.0
docker run -d \
--restart always \
--name kafka \
-p 9092:9092 \
--link zookeeper:zookeeper \
-e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181 \
-e ALLOW_PLAINTEXT_LISTENER=yes \
-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 \
-e KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-v kafka_data:/bitnami/kafka \
bitnami/kafka:3.9.0
docker compose 部署
# vim docker-compose.yaml
version: '3.8'
services:
zookeeper:
image: bitnami/zookeeper:3.8.4
container_name: zookeeper
restart: always
ports:
- "2181:2181"
environment:
- ALLOW_ANONYMOUS_LOGIN=yes
volumes:
- zookeeper_data:/bitnami/zookeeper
kafka:
image: bitnami/kafka:3.9.0
container_name: kafka
restart: always
ports:
- "9092:9092"
environment:
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092
- KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092
volumes:
- kafka_data:/bitnami/kafka
depends_on:
- zookeeper
volumes:
zookeeper_data:
kafka_data: