kafka的docker部署及nodejs使用

2021-09-24 08:21:36 字數 1546 閱讀 1017

專案需要完整的clone下來,而不是只建立docker-compose.yml配置檔案,否則啟動時候就會報dockerfile找不到的錯誤。高手另說。。。

version: '2'

services:

zookeeper:

image: wurstmeister/zookeeper

ports:

- "2181:2181"

kafka:

build: .

ports:

- "9092"

environment:

kafka_advertised_host_name: 10.6.19.121

kafka_zookeeper_connect: zookeeper:2181

volumes:

- /var/run/docker.sock:/var/run/docker.sock

複製**

啟動集群docker-compose up -d,也可以啟動多個kafka的集群docker-compose scale kafka=3。關閉命令docker-compose stop啟動集群成功後,可以通過docker ps檢視啟動狀態。另外需要注意的是,對映的32772這裡的埠,才是你能夠真正訪問到的埠位址,而不是使用9092

生產者(producer)

const kafka = require('kafka-node')

const producer = kafka.producer

const client = new kafka.kafkaclient()

const producer = new producer(client)

const payloads = [

];producer.on('ready', function

() else

});});producer.on('error', function (err) )

複製**

消費者(consumer)

var kafka = require('kafka-node'),

consumer = kafka.consumer,

client = new kafka.kafkaclient(),

consumer = new consumer(

client,[],

);consumer.on('message', message => )

consumer.on('error', error => )

複製**

消費資訊列印結果:

docker部署kafka集群

sudo curl l s uname m o usr local bin docker composesudo chmod x usr local bin docker compose zookeeper映象 docker pull zookeeper kafka manager映象 docker...

基於docker部署kafka群集

建立網路 zookeeper建立容器 kafka建立容器 docker pull wurstmeister zookeeper docker pull wurstmeister kafka 檢視當前網絡卡 docker network ls 建立新網絡卡 docker network create ...

在Docker環境下部署Kafka

這裡使用了wurstmeister kafka和wurstmeister zookeeper這兩個版本的映象 docker pull wurstmeister zookeeperdocker pull wurstmeister kafka在命令中執行docker images驗證兩個映象已經安裝完畢...