goim(1):学习goim ,使用docker安装kafka 镜像
来源:互联网 发布:南方全站仪取数据 编辑:程序博客网 时间:2024/06/10 20:05
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/78815398
未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
1,关于kafka
goim 是一个golang 写的聊天系统,使用了kafka的中间件。
2,使用docker构建kafka
下载kafka 文件夹
#!/bin/shVERSION=1.0.0KAFKA_VERSION=2.11-${VERSION}KAFKA=kafka_${KAFKA_VERSION}#判断文件夹存在不。if [ ! -d "kafka" ]; then echo "kafka init start." #判断文件不存在,就下载。 if [ ! -f "${KAFKA}.tgz" ]; then wget http://mirror.bit.edu.cn/apache/kafka/${VERSION}/${KAFKA}.tgz fi tar -zxvf ${KAFKA}.tgz cd ${KAFKA} rm -f LICENSE NOTICE rm -rf bin/windows/ site-docs/ #重命名文件夹。 cd .. mv ${KAFKA} kafka echo "kafka init finish ."else echo "kafka exists."fi
然后构建dockerfile
FROM docker.io/java:8-jdk-alpineRUN echo -e "http://mirrors.aliyun.com/alpine/latest-stable/main\n\http://mirrors.aliyun.com/alpine/latest-stable/community" > /etc/apk/repositories#set timezoneRUN apk update && apk add tzdata bash curl && \ ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ echo "Asia/Shanghai" > /etc/timezone && \ rm -rf /root/.cacheCOPY kafka/ /opt/kafkaEXPOSE 9092 2181VOLUME ["/data"]COPY entrypoint.sh /entrypoint.shWORKDIR /opt/kafkaENTRYPOINT ["/entrypoint.sh"]
设置启动脚本:entrypoint.sh
#!/bin/shulimit -n 8192set -emkdir -p /data/zookeepermkdir -p /data/kafkased -i "s/\/tmp\/kafka-logs/\/data\/kafka/g" "/opt/kafka/config/server.properties"sed -i "s/\/tmp\/zookeeper/\/data\/zookeeper/g" "/opt/kafka/config/zookeeper.properties"echo "start zookeeper ."sh /opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.propertiessleep 10echo "start kafka ."sh /opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
替换了 zookeeper 和 kafka的 存储目录。
其中 /data 是存储卷。
docker build -t demo/goim-kafka:latest .docker run -itd --name goim-kafka demo/goim-kafka:latestdocker exec -it goim-kafka bash
3,启动
进入之后设置了主目录 /opt/kafka
启动之后测试kafka 能工作不。
参考:
https://kafka.apache.org/quickstart
创建一个 test的 topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic testbin/kafka-topics.sh --list --zookeeper localhost:2181
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testThis is a messageThis is another message bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginningThis is a messageThis is another message
打开两个终端,一个可以发送消息,一个可以接收消息了。
4,总结
kafka是非常好的消息队列,速度非常快。
将kafka封装成docker镜像之后更方便了。
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/78815398
未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
阅读全文
0 0
- goim(1):学习goim ,使用docker安装kafka 镜像
- goim 安装
- goim(2):编译构建 goim 项目
- goim(3):goim代码简单的分析
- docker 镜像安装使用
- docker学习(2)--docker镜像、容器、仓库和docker的安装
- docker入门1 : 使用docker镜像
- docker mysql镜像安装和使用
- 三、Docker安装使用 镜像
- 使用docker安装ubuntu镜像
- docker学习笔记(六)使用Dockerfile构建镜像
- Docker学习笔记二:安装Docker并管理镜像
- Docker学习笔记二:安装Docker并管理镜像
- Docker学习一(安装docker并构建一个可ssh登录的镜像)
- 从零开始学习Docker(一、docker安装与镜像加速)
- docker镜像使用
- Docker 镜像使用
- Docker 镜像使用
- PHP之static静态变量详解(一)
- Adversarial Sample misleading the Model(生成对抗样本迷惑模型)
- 问题Incompatible ssh peer
- 2.python连接mongodb,利用微博数据制作云图
- 让一个div居于页面中间,水平居中同时垂直居中
- goim(1):学习goim ,使用docker安装kafka 镜像
- 玩转JVM虚拟机:JVM内存结构
- IDEA中的war和war exploded的区别
- JS格式化json数据展示到页面中
- 基于深度学习的绘画风格迁移
- 正则表达式
- Ubuntu 软件管理的工具使用方法
- 算法面试---最速下降法、牛顿法、拟牛顿法(DFP,BFGS)、共轭梯度法
- 爬坑日记