docker-compose部署kafka全过程

 更新时间:2024年12月19日 09:23:55   作者:lcz-2000  
文章介绍了如何使用docker-compose.yaml文件启动容器,并查看和创建Kafka topic,以及监控topic下的数据,作者分享了个人经验,希望对大家有所帮助

docker-compose部署kafka

docker-compose.yaml文件

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

启动容器

docker-compose up -d

查看已创建的topic

docker exec -it kafka kafka-topics.sh --list --bootstrap-server 主机IP地址:9092

创建topic

//方式一
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下数据

docker exec -it kafka kafka-console-consumer.sh --bootstrap-server 主机IP地址:9092 --topic test --from-beginning
//--from-beginning 参数表示从topic的起始位置开始读取消息 不带该参数默认从最新偏移量开始监控消费

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • docker mysql容器如何开启慢查询日志

    docker mysql容器如何开启慢查询日志

    本文主要介绍了docker mysql容器如何开启慢查询日志,文中根据实例编码详细介绍的十分详尽,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Docker镜像的迁移与备份及Dockerflie 使用方法详解

    Docker镜像的迁移与备份及Dockerflie 使用方法详解

    迁移和备份主要有三个操作命令将容器保存为镜像、备份镜像(将镜像导出为一个文件)、镜像的迁移与恢复,这篇文章主要介绍了Docker镜像的迁移与备份、Dockerflie 使用方法,需要的朋友可以参考下
    2022-07-07
  • Docker与iptables及实现bridge方式网络隔离与通信操作

    Docker与iptables及实现bridge方式网络隔离与通信操作

    这篇文章主要介绍了Docker与iptables及实现bridge方式网络隔离与通信操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Dockerfile文件详细介绍

    Dockerfile文件详细介绍

    Dockerfile 是一个文本文件,里面包含组装新镜像时用到的基础镜像和各种指令。使用dockerfile 文件来定义镜像,然后运行镜像,启动容器。本文详细介绍了Dockerfile文件,感兴趣的小伙伴可以参考一下
    2023-04-04
  • IDEA中进行Docker项目部署的实现步骤

    IDEA中进行Docker项目部署的实现步骤

    这篇文章主要介绍了IDEA中进行Docker项目部署的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • SpringBoot 整合 Docker的详细过程

    SpringBoot 整合 Docker的详细过程

    这篇文章主要介绍了SpringBoot 整合 Docker的详细过程,本文通过一个简单的项目来给大家介绍整合的详细过程,需要的朋友可以参考下
    2021-11-11
  • Docker搭建Jenkins并自动化打包部署项目的步骤

    Docker搭建Jenkins并自动化打包部署项目的步骤

    本文主要介绍了Docker搭建Jenkins并自动化打包部署项目的步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 完美解决docker安装mysql后Navicat连接不上的问题

    完美解决docker安装mysql后Navicat连接不上的问题

    这篇文章主要介绍了完美解决docker安装mysql后Navicat连接不上的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Windows/Mac系统Docker方式安装Mysql(包含utf8)

    Windows/Mac系统Docker方式安装Mysql(包含utf8)

    本文主要介绍了Windows/Mac系统Docker方式安装Mysql(包含utf8),文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • 如何使用docker搭建chromium

    如何使用docker搭建chromium

    这篇文章主要介绍了如何使用docker搭建chromium,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-03-03

最新评论