docker-compose部署kafka

docker-compose.yaml文件

bash 复制代码
version: '3'
services:
  zookeeper:
    image: bitnami/zookeeper:latest
    container_name: zookeeper
    environment:
      - ALLOW_ANONYMOUS_LOGIN=yes
    network_mode: host
  kafka:
    image: bitnami/kafka:latest
    container_name: kafka
    environment:
      - KAFKA_BROKER_ID=1
      - KAFKA_CFG_LISTENERS=PLAINTEXT://主机IP地址:9092
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://主机IP地址:9092 #如果是docker容器外访问这里要写宿主机的ip 否则会报Error connecting to node kafka:9092 (id: 1 rack: null) java.net.UnknownHostException: 不知道这样的主机。
      - KAFKA_CFG_ZOOKEEPER_CONNECT=主机IP地址:2181
      - ALLOW_PLAINTEXT_LISTENER=yes
    depends_on:
      - zookeeper
    network_mode: host

启动容器

bash 复制代码
docker-compose up -d

查看已创建的topic

bash 复制代码
docker exec -it kafka kafka-topics.sh --list --bootstrap-server 主机IP地址:9092

创建topic

bash 复制代码
//方式一
docker exec -it kafka kafka-console-producer.sh --bootstrap-server 主机IP地址:9092 --topic test
//方式二
docker exec kafka kafka-topics.sh --create --topic test --partitions 1 --replication-factor 1 --if-not-exists --bootstrap-server 主机IP地址:9092
//Created topic test.
//--partitions 1 表示你想要创建的分区数量为 1,--replication-factor 1 表示每个分区的副本因子为 1(通常在生产环境中,你会希望设置更高的副本因子以增加容错性)。--if-not-exists 是一个可选参数,用于在 topic 已经存在时防止报错。

查看并监控topic下数据

bash 复制代码
docker exec -it kafka kafka-console-consumer.sh --bootstrap-server 主机IP地址:9092 --topic test --from-beginning
//--from-beginning 参数表示从topic的起始位置开始读取消息 不带该参数默认从最新偏移量开始监控消费
相关推荐
张忠琳3 小时前
【NVIDIA】 NVIDIA Container Toolkit v1.19.1 — OCI 模块超深度分析之三
云原生·容器·架构·kubernetes·nvidia
Elastic 中国社区官方博客4 小时前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
风曦Kisaki7 小时前
#企业级docker私有仓库构建:harbor仓库与阿里云镜像仓库
阿里云·docker·容器
期待着20137 小时前
docker 安装 ,在centos7.9
运维·docker·容器
骑上单车去旅行9 小时前
Docker Compose 命令完全指南:从构建到运维
docker·容器·eureka
前端Baymax10 小时前
K8s PodCrashLoopBackOff假阳性排查
云原生·容器·kubernetes
spider_xcxc11 小时前
K8s 部署学习笔记
docker·容器·kubernetes·云计算·k8s
java_logo11 小时前
Docker Compose 部署 Apache Superset:轻松搭建开源 BI 平台
docker·开源·apache·superset·轩辕镜像·superset部署方案·docker superset
zy happy11 小时前
VMware虚拟机添加新的硬盘
java·linux·jvm·docker
AI人工智能+电脑小能手11 小时前
【大白话说Java面试题 第192题】【08_Kafka篇】第8题:死信队列是什么?延时队列是什么?
java·kafka·消息队列·死信队列·延时队列