1. 程式人生 > 實用技巧 >Docker安裝RabbitMQ與Kafka

Docker安裝RabbitMQ與Kafka

RabbitMq安裝(dokcer)

下載映象

docker pull rabbitmq

建立並啟動容器

docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost  -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq
  • -d 後臺執行容器;
  • --name 指定容器名;
  • -p 指定服務執行的埠(5672:應用訪問埠;15672:控制檯Web埠號);
  • -v 對映目錄或檔案;
  • --hostname 主機名(RabbitMQ的一個重要注意事項是它根據所謂的 “節點名稱” 儲存資料,預設為主機名);
  • -e 指定環境變數;(RABBITMQ_DEFAULT_VHOST:預設虛擬機器名;RABBITMQ_DEFAULT_USER:預設的使用者名稱;RABBITMQ_DEFAULT_PASS:預設使用者名稱的密碼)

啟動rabbitmq後臺管理服務

docker exec -it rabbitmq rabbitmq-plugins enable rabbitmq_management

訪問後臺頁面:

http://127.0.0.1:15672  初始密碼: admin  admin

Docker安裝Kafka

拉取映象:
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka 


2、建立容器
docker run -di --name=zk_01 -p 2181:2181  --privileged=true wurstmeister/zookeeper 
docker run -di --network=host --name=kafka_01 -v /etc/localtime:/etc/localtime  --privileged=true wurstmeister/kafka:latest /bin/bash
3、修改kafka的配置檔案server.propertiescd /opt/kafka_2.12-2.5.0/config/vi server.propertiesserver.properties配置檔案的內容如下所示broker.id=0
# 表示broker的編號,如果叢集中有多個broker,則每個broker的編號需要設定的不同listeners=PLAINTEXT://127.0.0.1:9092
# brokder對外提供的服務入口地址log.dirs=/tmp/kafka-logs
# 設定存放訊息日誌檔案的地址zookeeper.connect=127.0.0.1:2181
# Kafka所需Zookeeper叢集地址,教學中Zookeeper和Kafka都安裝本機
4、啟動kafkabin/kafka-server-start.sh config/server.properties
5、建立主題bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --create --topic demo--partitions 2 --replication-factor 1
# 建立主題,表示副本因子,表示每一個分割槽具有的副本數(包含分割槽本身),副本因子數不能超過broker的數量bin/kafka-topics.sh --zookeeper 172.19.0.60:2181 --list 
# 檢視所有的主題bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --describe --topic demo
# 檢視主題的詳細資訊bin/kafka-topics.sh --delete --zookeeper 127.0.0.1:2181 --topic demo
# 刪除主題bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic demo
# 開啟一個消費者bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic demo
# 開啟一個生產者修改分割槽數增加分割槽數bin/kafka-topics.sh --alter --zookeeper 127.0.0.1:2181 --topic demo--partitions 3修改分割槽數時,僅能增加分割槽個數。若是用其減少 partition 個數,則會報如下錯誤資訊:bin/kafka-topics.sh --alter --zookeeper 127.0.0.1:2181 --topic demo--partitions 2