详细介绍了在centos6中用docker部署kafka项目的方式,并结合实例分析了在centos6自然环境中用docker部署kafka项目的说明和技巧,可供朋友们参考。
本文举例描述centos6使用docker部署kafka项目的方式。分享给大家参考。实际上是这样的:
文件目录结构:
/Kafka
/dockerfile
/start.sh
/Readme
/Kafka_2.11-0.10.2.1.tgz
Dockfile
FROMcentos MAINTAINERqiongtao.lihnatao@126.com ADD./kafka_2.11-0.10.2.1.tgz/opt ADD./start.sh/start.sh ENVKAFKA_PORT=9092\ KAFKA_DIR=/opt/kafka\ KAFKA_DATA_DIR=/data/kafka RUNecho"Asia/shanghai">/etc/timezone\ &&cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime\ &&yum-yinstalljava\ &&mkdir-p$KAFKA_DATA_DIR\ &&mv/opt/kafka_2.11-0.10.2.1$KAFKA_DIR EXPOSE$KAFKA_PORT ENVPATH=$PATH:$KAFKA_DIR/bin ENTRYPOINT["sh","/start.sh"]start.sh
conf=$KAFKA_DIR/config/server.properties sed-i"s|broker.id=0|broker.id=${BROKER_ID:-1}|g"$conf sed-i"s|#delete.topic.enble=true|delete.topic.enble=true|g"$conf sed-i"s|log.dirs=/tmp/kafka-logs|log.dirs=${KAFKA_DATA_DIR}|g"$conf sed-i"s|#advertised.listeners=PLAINTEXT://your.host.name:9092|advertised.listeners=PLAINTEXT://${KAFKA_HOST}:${KAFKA_PORT:-9092}|g"$conf sed-i"s|zookeeper.connect=localhost:2181|zookeeper.connect=${ZOOKEEPER_HOST}:${ZOOKEEPER_PORT:-2181}|g"$conf shkafka-server-start.sh$conf自述文件
dockerrm-fkafka dockerrmi-fkafka dockerbuild-tkafka. dockerrun-d\ -p9092:9092\ --namekafka\ -eKAFKA_HOST=101.201.111.163\ -eZOOKEEPER_HOST=10.171.8.236\ -eBROKER_ID=1\ -v/data:/data\ kafka dockerps-a dockerlogs-fkafka它显示KAFKA_HOST=hostIP,这与环境变量的advertised.listeners相匹配。
测试部署
catReadme|whilereadline;do$line;done卡夫卡下载链接:
http://mirrors.tuna.Tsinghua.edu.cn/Apache/Kafka/0.10.2.1/Kafka_2.11-0.10.2.1.tgz
期待以上对Docker用具的应用有所帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)