网站首页 > 技术文章 正文
下载 Docker 镜像:
[root@centos-101 ~]# docker pull wurstmeister/zookeeper:latest
[root@centos-101 ~]# docker pull wurstmeister/kafka:latest
查看下载完成的Docker 镜像:
docker images
下面分别启动Zookeeper 和 kafka 容器,这一步骤可以忽略。直接通过 docker-compose 命令来启动容器。
创建并启动容器
先启动Zookeeper:
[root@centos-101 ~]# docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper:latest
在启动kafka 容器:
创建 docker-compose.yml 文件
在/root/目录下,创建kafka 目录(mkdir):
[root@centos-101 kafka]# pwd
/root/kafka
然后在 kafka 子目录下,创建 docker-compose.yml 文件,如下所示:
version: '2'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka
ports:
- "9092:9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: 192.168.56.101
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
其中 KAFKA_ADVERTISED_HOST_NAME: 192.168.56.101 根据具体的环境,设置对应的IP 地址。
参考官方的docker-compose.yml文件:
https://raw.githubusercontent.com/wurstmeister/kafka-docker/master/docker-compose.yml
启动 docker-compose
[root@centos-101 kafka]# docker-compose up -d
Creating kafka_zookeeper_1 ... done
Creating kafka_kafka_1 ... done
查看启动的zooker/kafka 容器:
docker ps
也可以访问http://192.168.56.101:9000/#/containers 【portainer容器】,查看相应的容器:
向 kafka 发生测试消息
可以进入 kafka 容器:
docker exec -it kafka_kafka_1 /bin/bash
进入kafka 所在目录,以及查看kafka版本:
查看bin 目录:
bash-4.4# ls bin
connect-distributed.sh kafka-reassign-partitions.sh
connect-standalone.sh kafka-replica-verification.sh
kafka-acls.sh kafka-run-class.sh
kafka-broker-api-versions.sh kafka-server-start.sh
kafka-configs.sh kafka-server-stop.sh
kafka-console-consumer.sh kafka-streams-application-reset.sh
kafka-console-producer.sh kafka-topics.sh
kafka-consumer-groups.sh kafka-verifiable-consumer.sh
kafka-consumer-perf-test.sh kafka-verifiable-producer.sh
kafka-delegation-tokens.sh trogdor.sh
kafka-delete-records.sh windows
kafka-dump-log.sh zookeeper-security-migration.sh
kafka-log-dirs.sh zookeeper-server-start.sh
kafka-mirror-maker.sh zookeeper-server-stop.sh
kafka-preferred-replica-election.sh zookeeper-shell.sh
kafka-producer-perf-test.sh
(1)创建一个topic 为 mykafka。
bash-4.4# bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic mykafka
Created topic "mykafka".
(2)查看当前的 topic 列表。
bash-4.4# bin/kafka-topics.sh --list --zookeeper zookeeper:2181
__consumer_offsets
mykafka
(3)运行一个消息生产者,指定topic 为刚刚创建的 mykafka。同时,输入一些测试消息。
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka
>hello rickie
(输入若干条消息后 按^C 退出发布)
(4)运行一个消息生产者,指定 topic 为刚刚创建的 mykafka。可以接收到生产者发送的消息。
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mykafka --from-beginning
hello rickie
这样,kafka 环境已经ready 了(部署正常)。
停止 docker-compose
在你的项目路径下使用 docker-compose down。
[root@centos-101 kafka]# docker-compose down
Stopping kafka_zookeeper_1 ... done
Stopping kafka_kafka_1 ... done
Removing kafka_zookeeper_1 ... done
Removing kafka_kafka_1 ... done
Removing network kafka_default
猜你喜欢
- 2024-09-12 64.手把手使用Docker
- 2024-09-12 kubernetes基础知识之docker容器和镜像
- 2024-09-12 docker 安装MongoDB(docker 安装mongodb4.4.4)
- 2024-09-12 Docker入门与实践:容器操作方法详细介绍
- 2024-09-12 Docker实战四之Docker 容器使用(docker 容器运行命令)
- 2024-09-12 【docker】:全面认识Docker和基本指令
- 2024-09-12 Docker 学习小总结(docker基础教程)
- 2024-09-12 运行Docker遇到权限问题应该如何处理?
- 2024-09-12 史上超全!Docker命令全集,值得收藏
- 2024-09-12 容器化学习-docker2生成镜像(docker手动生成镜像)
- 1512℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 550℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 502℃MySQL service启动脚本浅析(r12笔记第59天)
- 480℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 478℃启用MySQL查询缓存(mysql8.0查询缓存)
- 458℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 438℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 435℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- c语言min函数头文件 (68)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)